首頁 >後端開發 >php教程 >php頁面設定快取時間實例代碼

php頁面設定快取時間實例代碼

小云云
小云云原創
2018-02-12 10:04:073265瀏覽

本文主要跟大家介紹了php處理靜態頁面:頁面設定快取時間實例,小編覺得蠻不錯的,現在分享給大家,也給大家做個參考。一起跟著小編過來看看吧,希望能幫助大家。

問:如何觸發系統產生純靜態化頁面?

1.頁面新增快取時間

2.手動觸發的方式

3.crontab定時掃描程式

我們來實作方案一:頁面新增快取時間

使用者要求頁面=> 頁面是否過期=> => 否(取得靜態頁面) || = >是(動態頁面產生一份新的靜態頁面)


if( 如果存在这个静态文件 && 没有过期){
  // 获取页面
}else{
  // 重新生成一份静态页面
}

ok,基本邏輯就是如此,下面我們完善程式碼:


<?php

if(is_file(&#39;./index.html&#39;) && (time()-filemtime(&#39;./index.html&#39;)) < 60){ 
  // 假设缓存时间是60秒
  // 获取页面
  require_once(&#39;./index.html&#39;);
}else{
  // 重新生成一份静态页面
  // 准备要展示到网页的数据
  $data = array( 
    array(&#39;id&#39;=>1,&#39;msg&#39;=>&#39;hello java&#39;),
    array(&#39;id&#39;=>2,&#39;msg&#39;=>&#39;hello php&#39;),
    array(&#39;id&#39;=>3,&#39;msg&#39;=>&#39;hello python&#39;),
  );

  // 渲染到模板
  // 实际项目一般是在html里渲染
  // 这里演示 希望能看懂

  ob_start(); // 开始输入缓冲控制

  foreach($data as $item){
    echo $item[&#39;id&#39;].&#39;===>&#39;.$item[&#39;msg&#39;].&#39;<br/>&#39;;
  }

  // 开始生成静态页面文件
  file_put_contents(&#39;index.html&#39;,ob_get_contents());
}

這樣我們存取index.php,如果靜態檔案快取沒有過期,其實質存取的內容來自index.html這個靜態檔案。

相關推薦:

php設定靜態內容快取時間的方法,php設定靜態快取_PHP教學

###php設定靜態內容快取時間的方法,php設定靜態快取_PHP教學######

以上是php頁面設定快取時間實例代碼的詳細內容。更多資訊請關注PHP中文網其他相關文章!

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