Est-il possible d'obtenir le temps restant pour une valeur stockée dans le memcache ?
Réponses
Trop de publicités?
Dustin
Points
35205
andufo
Points
2522
Oui, vous pouvez, mais ce n'est pas une valeur garantie, puisqu'elle peut être purgée. Je ne conseillerais cependant de vérifier cela que sur un environnement de développement.
function getMemcacheKeys() {
$memcache = new Memcache;
$memcache->connect('localhost', 11211) or die ("Could not connect to memcache server");
$list = array();
$allSlabs = $memcache->getExtendedStats('slabs');
foreach($allSlabs as $server => $slabs) {
foreach($slabs AS $slabId => $slabMeta) {
if (!is_numeric($slabId)) {
continue;
}
$cdump = $memcache->getExtendedStats('cachedump',(int)$slabId);
foreach($cdump AS $keys => $arrVal) {
if (!is_array($arrVal)) continue;
foreach($arrVal AS $k => $v) {
echo $k .' - '.date('H:i d.m.Y',$v[1]).'<br />';
}
}
}
}
}
Copié de : https://stackoverflow.com/a/7480534/338840