function State::getMultiple
Same name in other branches
- 8.9.x core/lib/Drupal/Core/State/State.php \Drupal\Core\State\State::getMultiple()
- 10 core/lib/Drupal/Core/State/State.php \Drupal\Core\State\State::getMultiple()
- 11.x core/lib/Drupal/Core/State/State.php \Drupal\Core\State\State::getMultiple()
Overrides StateInterface::getMultiple
1 call to State::getMultiple()
- State::get in core/
lib/ Drupal/ Core/ State/ State.php - Returns the stored value for a given key.
File
-
core/
lib/ Drupal/ Core/ State/ State.php, line 47
Class
- State
- Provides the state system using a key value store.
Namespace
Drupal\Core\StateCode
public function getMultiple(array $keys) {
$values = [];
$load = [];
foreach ($keys as $key) {
// Check if we have a value in the cache.
if (isset($this->cache[$key])) {
$values[$key] = $this->cache[$key];
}
elseif (!array_key_exists($key, $this->cache)) {
$load[] = $key;
}
}
if ($load) {
$loaded_values = $this->keyValueStore
->getMultiple($load);
foreach ($load as $key) {
// If we find a value, even one that is NULL, add it to the cache and
// return it.
if (isset($loaded_values[$key]) || array_key_exists($key, $loaded_values)) {
$values[$key] = $loaded_values[$key];
$this->cache[$key] = $loaded_values[$key];
}
else {
$this->cache[$key] = NULL;
}
}
}
return $values;
}
Buggy or inaccurate documentation? Please file an issue. Need support? Need help programming? Connect with the Drupal community.