/**
* Get all cached data
*
* @return mixed Boolean false on failure or a cached data object
*
* @since 3.5
*/
public function getAll()
{
$allinfo = apcu_cache_info();
$keys = $allinfo['cache_list'];
$secret = $this->_hash;
$data = array();
foreach ($keys as $key) {
if (isset($key['info'])) {
// The internal key name changed with APCu 4.0.7 from key to info
$name = $key['info'];
} elseif (isset($key['entry_name'])) {
// Some APCu modules changed the internal key name from key to entry_name
$name = $key['entry_name'];
} else {
// A fall back for the old internal key name
$name = $key['key'];
}
$namearr = explode('-', $name);
if ($namearr !== false && $namearr[0] == $secret && $namearr[1] === 'cache') {
$group = $namearr[2];
if (!isset($data[$group])) {
$item = new CacheStorageHelper($group);
} else {
$item = $data[$group];
}
$item->updateSize($key['mem_size']);
$data[$group] = $item;
}
}
return $data;
}