亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

php處理靜態(tài)頁面:頁面設置緩存時間實例

 更新時間:2017年06月22日 11:37:42   作者:學習筆記666  
本篇文章主要介紹了php處理靜態(tài)頁面:頁面設置緩存時間實例,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧

通過PHP去生成一個純靜態(tài)的頁面:http://chabaoo.cn/article/116814.htm

問:如何觸發(fā)系統(tǒng)生成純靜態(tài)化頁面?

1.頁面添加緩存時間

2.手動觸發(fā)的方式

3.crontab定時掃描程序

我們來實現(xiàn)方案一:頁面添加緩存時間

用戶請求頁面 => 頁面是否過期 => => 否(獲取靜態(tài)頁面) || =>是(動態(tài)頁面生成一份新的靜態(tài)頁面)

if( 如果存在這個靜態(tài)文件 && 沒有過期){
  // 獲取頁面
}else{
  // 重新生成一份靜態(tài)頁面
}

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

<?php

if(is_file('./index.html') && (time()-filemtime('./index.html')) < 60){ 
  // 假設緩存時間是60秒
  // 獲取頁面
  require_once('./index.html');
}else{
  // 重新生成一份靜態(tài)頁面
  // 準備要展示到網(wǎng)頁的數(shù)據(jù)
  $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'].'<br/>';
  }

  // 開始生成靜態(tài)頁面文件
  file_put_contents('index.html',ob_get_contents());
}

這樣我們訪問index.php,如果靜態(tài)文件緩存沒有過期,其實質(zhì)訪問的內(nèi)容來自index.html這個靜態(tài)文件。

以上就是本文的全部內(nèi)容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • 一個php Mysql類 可以參考學習熟悉下

    一個php Mysql類 可以參考學習熟悉下

    慢慢研究吧,非常適合學習的php數(shù)據(jù)庫(mysql)類,也可以拿來直接就用,稍微熟悉一下就可以啦!
    2009-06-06
  • 33道php常見面試題及答案

    33道php常見面試題及答案

    這篇文章主要介紹了33道php常見面試題及答案,都是平時面試的時候經(jīng)常會遇到的,小伙伴們仔細了解下吧。
    2015-07-07
  • 基于laravel-admin 后臺 列表標簽背景的使用方法

    基于laravel-admin 后臺 列表標簽背景的使用方法

    今天小編就為大家分享一篇基于laravel-admin 后臺 列表標簽背景的使用方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2019-10-10
  • php三維數(shù)組去重(示例代碼)

    php三維數(shù)組去重(示例代碼)

    這篇文章主要是對php三維數(shù)組去重的示例代碼進行了詳細的介紹,需要的朋友可以過來參考下,希望對大家有所幫助
    2013-11-11
  • PHP清除緩存的幾種方法總結(jié)

    PHP清除緩存的幾種方法總結(jié)

    這篇文章主要介紹了PHP清除緩存的幾種方法總結(jié)的相關(guān)資料,希望通過本文大家能夠掌握清除緩存的方法,需要的朋友可以參考下
    2017-09-09
  • PHP SplObjectStorage使用實例

    PHP SplObjectStorage使用實例

    這篇文章主要介紹了PHP SplObjectStorage使用實例,SplObjectStorage是SPL標準庫中的數(shù)據(jù)結(jié)構(gòu)對象容器,用來存儲一組對象,特別是當你需要唯一標識對象的時候,需要的朋友可以參考下
    2015-05-05
  • PHP rsa加密解密使用方法

    PHP rsa加密解密使用方法

    這篇文章主要介紹了PHP rsa加密解密使用方法,本文講解了生成公鑰、私鑰及PHP中使用生成的公鑰、私鑰進行加密解密實例,需要的朋友可以參考下
    2015-04-04
  • CodeIgniter框架實現(xiàn)的整合Smarty引擎DEMO示例

    CodeIgniter框架實現(xiàn)的整合Smarty引擎DEMO示例

    這篇文章主要介紹了CodeIgniter框架實現(xiàn)的整合Smarty引擎DEMO,結(jié)合實例形式分析了CodeIgniter框架整合Smarty引擎的原理、操作步驟及相關(guān)實現(xiàn)技巧,需要的朋友可以參考下
    2019-03-03
  • Thinkphp5.0框架視圖view的循環(huán)標簽用法示例

    Thinkphp5.0框架視圖view的循環(huán)標簽用法示例

    這篇文章主要介紹了Thinkphp5.0框架視圖view的循環(huán)標簽用法,結(jié)合實例形式分析了thinkPHP5框架視圖view中的volist標簽、foreach標簽、for標簽相關(guān)使用方法,需要的朋友可以參考下
    2019-10-10
  • mysql alter table命令修改表結(jié)構(gòu)實例詳解

    mysql alter table命令修改表結(jié)構(gòu)實例詳解

    這篇文章主要介紹了mysql alter table命令修改表結(jié)構(gòu)實例的相關(guān)資料,需要的朋友可以參考下
    2016-09-09

最新評論