function variable_initialize
variable_initialize($conf = array())
Loads the persistent variable table.
The variable table is composed of values that have been saved in the table with variable_set() as well as those explicitly specified in the configuration file.
File
- includes/bootstrap.inc, line 1157
- Functions that need to be loaded on every Drupal request.
Code
function variable_initialize($conf = array()) { // NOTE: caching the variables improves performance by 20% when serving // cached pages. if ($cached = cache_get('variables', 'cache_bootstrap')) { $variables = $cached->data; } else { // Cache miss. Avoid a stampede. $name = 'variable_init'; if (!lock_acquire($name, 1)) { // Another request is building the variable cache. // Wait, then re-run this function. lock_wait($name); return variable_initialize($conf); } else { // Proceed with variable rebuild. $variables = array_map('unserialize', db_query('SELECT name, value FROM {variable}')->fetchAllKeyed()); cache_set('variables', $variables, 'cache_bootstrap'); lock_release($name); } } foreach ($conf as $name => $value) { $variables[$name] = $value; } return $variables; }
© 2001–2016 by the original authors
Licensed under the GNU General Public License, version 2 and later.
Drupal is a registered trademark of Dries Buytaert.
https://api.drupal.org/api/drupal/includes!bootstrap.inc/function/variable_initialize/7.x