note 102495 deleted from memcache.getextendedstats by danbrown
[email protected] Thu, 17 Feb 2011 08:08:46 -0800
| Newsgroups | php.notes |
|---|---|
| Message-ID | <[email protected]> |
Note Submitter: vasiliy dott dolgov att gmail dott com
----
Thanks to manmca. I use more simple code for single-server configuration.
<?php
/* OO style */
class MyMemcache extends Memcache{
public function getAllKeys(){
$keys = array();
foreach(array_keys($this->getStats('slabs')) as $slab){
$cdump = $this->getStats('cachedump',$slab);
$keys = !is_null($cdump) ? $keys + array_keys($cdump) : $keys;
}
return $keys;
}
}
$m = new MyMemcache();
$m->connect('127.0.0.1', 11211);
$keys = $m->getAllKeys();
print_r($keys);
/* Procedural style */
function memcache_get_all_keys($obj){
$keys = array();
foreach(array_keys(memcache_get_stats($obj,'slabs')) as $slab){
$cdump = memcache_get_stats($obj,'cachedump',$slab);
$keys = !is_null($cdump) ? $keys + array_keys($cdump) : $keys;
}
return $keys;
}
$m_obj = memcache_connect('127.0.0.1', 11211);
$keys = memcache_get_all_keys($m_obj);
print_r($keys);