2016-01-21 74 views
0

我使用zend_shm_cache函數作爲變量的快速存儲。我的問題是緩存在TTL結束後似乎沒有被清除。例如:Zend數據緩存TTL不工作

zend_shm_cache_store($key = 'test3', 'value', 2); 
foreach(range(1,5) as $timer){ 
    sleep(1); 
    echo $timer.' - ' .zend_shm_cache_fetch($key).'<br/>'; 
} 

返回:

 
1 - value 
2 - 
3 - value 
4 - value 
5 - value 

我希望緩存保存第二秒後空。你能解釋發生了什麼或提出解決方案嗎?

回答

1

我APCU的文檔中的答案:

的TTL過後,將存儲的變量將會從 緩存(在下一次請求時)予以刪除。

由於我的代碼只在一個請求中運行,所以即使時間到期,也不會刪除緩存。