Memcache获得关键的到期时间

Tom*_*Tom 7 php memcached

使用Memcached和PHP的memcached的图书馆,有没有办法让当前的密钥过期时间做时得到

小智 13

使用此示例.它显示所有服务器密钥的过期日期时间,因此您可以获得当前密钥的到期时间.

function getMemcacheKeys() {

    $memcache = new Memcache;
    $memcache->connect('192.168.1.18', 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 />';
                }
           }
        }
    }   
}
Run Code Online (Sandbox Code Playgroud)


rye*_*guy 6

不,这种数据无法从客户端检索.如果您真的需要它,请将它与数据一起存储在序列化数组中.另外,请查看这篇文章,以防您尝试做类似的事情.