function get($key)
{
$realFile = $this->_getDir($key);
if (!$realFile || !is_file($realFile)) {
return false;
}
$fp = fopen($realFile, "r");
if (!$fp) {
return false;
}
flock($fp, LOCK_SH);
$timeout = trim(fgets($fp));
if (!empty($timeout)) {
$timenow = time();
if ($timeout == -1 || $timenow < $timeout) {
$data = fread($fp, filesize($realFile));
flock($fp, LOCK_UN);
fclose($fp);
return unserialize($data);
} else {
//过期了,应该删除这个文件,但为了性能考虑,不删除
}
}
flock($fp, LOCK_UN);
fclose($fp);
return false;
}