Php zend_缓存绝对过期时间
我正在使用带有zend framework和zend_缓存的php。我有以下代码行:`Php zend_缓存绝对过期时间,php,zend-framework,zend-cache,Php,Zend Framework,Zend Cache,我正在使用带有zend framework和zend_缓存的php。我有以下代码行:` $frontendOptions = array ('lifetime' => 12 * 3600, 'automatic_serialization' => true ); $backendOptions = array ('cache_dir' => APPLICATION_PATH . '/../tmp'); $cache = Zend_Cache::facto
$frontendOptions = array ('lifetime' => 12 * 3600, 'automatic_serialization' => true );
$backendOptions = array ('cache_dir' => APPLICATION_PATH . '/../tmp');
$cache = Zend_Cache::factory ( 'Core', 'File', $frontendOptions, $backendOptions );
$CacheName = ('CACHE_NAME');
$CacheResult = $cache->load ( $CacheName );
if($CacheResult==false)
echo 'no cache or chache is expired';
else
var_dump($CacheResult);`
问题是,当我使用这样的保存功能时:
$cache->save($data,$CacheName);
我不想更新过期时间。有没有办法在不更新其过期时间的情况下更新缓存?首先,ZF1的Zend_缓存将给定的生存期存储为固定过期时间。 因此,您只需根据当前时间和过期时间计算当前生存期:
$lifetime = $expirationTime - time();
if ($lifetime > 0) {
$cache->save($data, $id, $tags, $lifetime);
}
PS:在ZF2中,您必须检查存储是否根据当前时间、mtime和给定的TTL(如文件系统)或根据存储的固定过期时间(如memcache/apc)检查过期