缓存策略

① 并不会在set的时候设置有效期

    private function isValid($result, $modifiVersion, $addTime, $addVersion, $nowTime, $type) {
        if (!$type) {
            if ($this->useCache == false || !$addTime || $modifiVersion && (($modifiVersion > $addVersion) && ($nowTime - $addTime) > 30)) {
                return false;
            }
        } else if ($type == 'time') {
            //echo $nowTime."<br>".$addTime;
            if ($this->useCache == false || !$addTime || $modifiVersion && (($modifiVersion > $addVersion) || ($nowTime - $addTime) > 30)) {
                return false;
            }
        }
        return true;
    }

 ② 在浏览器进行客户端的缓存

我们就可以在用户重复提交页面请求的时候,告诉用户这个页 面没有改变,可以调用缓存

function etagCache(){
    $etag='listcache';
    if($_SERVER['HTTP_IF_NONE_MATCH']==$etag){
        header('Etag:'.$etag,true,304);
        exit();
    }else{
        header('Etag:'.$etag);
    }
}

function delEtagCache(){
    header('Etag:');
    $_SERVER['HTTP_IF_NONE_MATCH']='';
}
原文地址:https://www.cnblogs.com/bai-jimmy/p/3412041.html