Php zend_缓存绝对过期时间

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

我正在使用带有zend framework和zend_缓存的php。我有以下代码行:`

    $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)检查过期