php 定时缓存,php页面设置缓存时间实例代码
本文主要和大家介紹了php處理靜態頁面:頁面設置緩存時間實例,小編覺得挺不錯的,現在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧,希望能幫助到大家。
問:如何觸發系統生成純靜態化頁面?
1.頁面添加緩存時間
2.手動觸發的方式
3.crontab定時掃描程序
我們來實現方案一:頁面添加緩存時間
用戶請求頁面 => 頁面是否過期 => => 否(獲取靜態頁面) || =>是(動態頁面生成一份新的靜態頁面)
if( 如果存在這個靜態文件 && 沒有過期){
// 獲取頁面
}else{
// 重新生成一份靜態頁面
}
ok,基本邏輯就是如此,下面我們完善代碼:
if(is_file('./index.html') && (time()-filemtime('./index.html')) < 60){
// 假設緩存時間是60秒
// 獲取頁面
require_once('./index.html');
}else{
// 重新生成一份靜態頁面
// 準備要展示到網頁的數據
$data = array(
array('id'=>1,'msg'=>'hello java'),
array('id'=>2,'msg'=>'hello php'),
array('id'=>3,'msg'=>'hello python'),
);
// 渲染到模板
// 實際項目一般是在html里渲染
// 這里演示 希望能看懂
ob_start(); // 開始輸入緩沖控制
foreach($data as $item){
echo $item['id'].'===>'.$item['msg'].'
';
}
// 開始生成靜態頁面文件
file_put_contents('index.html',ob_get_contents());
}
這樣我們訪問index.php,如果靜態文件緩存沒有過期,其實質訪問的內容來自index.html這個靜態文件。
相關推薦:
總結
以上是生活随笔為你收集整理的php 定时缓存,php页面设置缓存时间实例代码的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: php临时目录没有文件夹里,PHP上传
- 下一篇: php中的getdate+函数,PHP中