2010-12-23 95 views

回答

1

號Memcache過期時間只是禮貌而不是保證。任何時候都可以清除緩存中的任何項目。

1

不,它不是。如果你想要類似的東西,你需要將它編碼爲你的價值。

1

是的,你可以,但它不是一個保證值,因爲它可以清除。不過,我只會建議在開發環境中進行檢查。 https://stackoverflow.com/a/7480534/338840

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 />'; 
       } 
      } 
     } 
    } 
} 

從複製