php真靜態快取 ob系統函數 php 函數傳回值 php 陣列 php date函

WBOY
發布: 2016-07-29 08:53:24
原創
1164 人瀏覽過

真靜態快取:(真的產生一個html頁面,在接下來的操作中直接呼叫該html)
第一次(刷新網頁)判斷是否存在快取檔案 (可設定一時間)
如果不存在 第一次是(可依PDO)連接資料庫 尋找資料 輸出到頁面 並且同時快取(寫入)到本機一個.html檔案;
再次(刷新網頁) 判斷是否存有該快取檔案時
當存在快取文件,直接尋找本地快取(file_get_content) 讀取出來

以下程式碼在ci框架中編寫完成

<code><span>$time</span> = <span>10</span>; <span>//设置缓存页面过期时间</span><span>if</span>(!is_file(<span>"obtest.html"</span>) || time()-filemtime(<span>"obtest.html"</span>)><span>$time</span>){
ob_start();       <span>//打开缓冲区   </span><span>$arr</span>[<span>'res'</span>]=<span>$this</span>->db->get(<span>'user'</span>)->result_array();
<span>$this</span>->load->view(<span>'welcome_message'</span>,<span>$arr</span>);
<span>//print_r($arr);</span><span>$info</span> = ob_get_contents();       <span>//得到缓冲区的内容并且赋值给$info   </span><span>$file</span> = <span>fopen</span>(<span>'obtest.html'</span>, <span>'w'</span>);  <span>//打开文件info.txt   </span><span>fwrite</span>(<span>$file</span>, <span>$info</span>);       <span>//写入信息到info.txt   </span><span>fclose</span>(<span>$file</span>);          <span>//关闭文件info.txt</span>
}<span>else</span>{
    echo <span>"cache:"</span>;
    echo file_get_contents(<span>"obtest.html"</span>);
}
</code>
登入後複製

fopen 和filemtime 方法的使用:

<code><span><span>fopen</span><span>()</span> 函数打开文件或者 URL。<span>fopen</span>(文件名称,文件访问类型)<span>w</span>写入方式打开。

<span>filemtime</span><span>()</span> 函数返回文件内容上次的修改时间,里面跟文件名。</span></code>
登入後複製
').addClass('pre-numbering'). hide(); $(this).addClass('has-numbering').parent().append($numbering); for (i = 1; i ').text(i)); }; $numbering.fadeIn(1700); }); });

以上就介紹了php真靜態快取 ob系統函數,包含了php,函數方面的內容,希望對PHP教學有興趣的朋友有幫助。

相關標籤:
來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板
關於我們 免責聲明 Sitemap
PHP中文網:公益線上PHP培訓,幫助PHP學習者快速成長!