《PHP教程:php處理靜態(tài)頁面:頁面設(shè)置緩存時(shí)間實(shí)例》要點(diǎn):
本文介紹了PHP教程:php處理靜態(tài)頁面:頁面設(shè)置緩存時(shí)間實(shí)例,希望對(duì)您有用。如果有疑問,可以聯(lián)系我們。
通過PHP去生成一個(gè)純靜態(tài)的頁面:/article/116814.htmPHP應(yīng)用
問:如何觸發(fā)系統(tǒng)生成純靜態(tài)化頁面?PHP應(yīng)用
1.頁面添加緩存時(shí)間
PHP應(yīng)用
2.手動(dòng)觸發(fā)的方式
PHP應(yīng)用
3.crontab定時(shí)掃描程序
PHP應(yīng)用
我們來實(shí)現(xiàn)方案一:頁面添加緩存時(shí)間PHP應(yīng)用
用戶請(qǐng)求頁面 => 頁面是否過期 => => 否(獲取靜態(tài)頁面) || =>是(動(dòng)態(tài)頁面生成一份新的靜態(tài)頁面)
PHP應(yīng)用
if( 如果存在這個(gè)靜態(tài)文件 && 沒有過期){ // 獲取頁面 }else{ // 重新生成一份靜態(tài)頁面 }
ok,基本邏輯就是如此,下面我們完善代碼:PHP應(yīng)用
<?php if(is_file('./index.html') && (time()-filemtime('./index.html')) < 60){ // 假設(shè)緩存時(shí)間是60秒 // 獲取頁面 require_once('./index.html'); }else{ // 重新生成一份靜態(tài)頁面 // 準(zhǔn)備要展示到網(wǎng)頁的數(shù)據(jù) $data = array( array('id'=>1,'msg'=>'hello java'), array('id'=>2,'msg'=>'hello php'), array('id'=>3,'msg'=>'hello python'), ); // 渲染到模板 // 實(shí)際項(xiàng)目一般是在html里渲染 // 這里演示 希望能看懂 ob_start(); // 開始輸入緩沖控制 foreach($data as $item){ echo $item['id'].'===>'.$item['msg'].'<br/>'; } // 開始生成靜態(tài)頁面文件 file_put_contents('index.html',ob_get_contents()); }
這樣我們?cè)L問index.php,如果靜態(tài)文件緩存沒有過期,其實(shí)質(zhì)訪問的內(nèi)容來自index.html這個(gè)靜態(tài)文件.
PHP應(yīng)用
以上就是本文的全部內(nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持維易PHP.PHP應(yīng)用
轉(zhuǎn)載請(qǐng)注明本頁網(wǎng)址:
http://www.fzlkiss.com/jiaocheng/578.html