首頁  >  文章  >  後端開發  >  快取靜態頁類

快取靜態頁類

WBOY
WBOY原創
2016-07-29 08:49:471173瀏覽
/**
 * 缓存静态页面类
 */
class HtmlCache{
 
    /**
     * 开启缓存
     * $filename缓存完整路径
     * $time缓存时间单位是秒,默认7200秒
     */
    public function cache_start($filename,$time=7200)
    {
        $cachefile = $filename;
        $cachetime = $time;
        ob_start();
        if(file_exists($cachefile) && (time()-$cachetime < filemtime($cachefile)))//判断文件是否存在或者是否在缓存时间内
        {
            include($cachefile);
            ob_end_flush();
            exit;
        }  
    }
    /**
     * 结束缓存
     * $filename缓存完整路径
     */
    public function cache_end($filename){
        $cachefile = $filename;
        $fp = fopen($cachefile, &#39;w&#39;);
        fwrite($fp, ob_get_contents());
        fclose($fp);
        ob_end_flush();  
    }
}
用法:
$HtmlCache = new HtmlCache();
$filename = "./cache.html";
$HtmlCache->cache_start($filename);
    //以下是输出的内容,放在cache_start和cache_end两个方法之间
    echo "cache";
$HtmlCache->cache_end($filename);

以上就介紹了快取靜態頁類,包括了快取方面的內容,希望對PHP教學有興趣的朋友有幫助。

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn