程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 網頁編程 >> PHP編程 >> PHP綜合 >> PHP緩存頁面方法

PHP緩存頁面方法

編輯:PHP綜合

  對於PHP開發人員來說,PHP緩存頁面方法是經常被使用到的,今天關於PHP緩存頁面的方法,和大家分享一下
  /*****************************************************************
  -- 函數名:cache_page(包括cache_page_go)
  -- 作 用:輕松快速緩存全站
  -- 參 數:緩存時間(單位:秒)
  -- 返回值:輸出內容
  -- 實 例:cache_page(300); 函數使用在頁面的最上方
  *******************************************************************/
  function cache_page($refresh=20){
  ob_start();//開啟緩沖區
  $temp=sha1($_SERVER['PHP_SELF'].'|G|'.serialize($_GET).'|P|'.serialize($_POST));//緩存文件名字
  $temp=dirname(__FILE__).'/cache/'.$temp;//緩存文件路徑
  if(!file_exists($temp)){//緩存文件不存在
  register_shutdown_function('cache_page_go',$temp);
  }else{//緩存文件存在
  if((time()-filemtime($temp))>$refresh ){//緩存超時
  register_shutdown_function('cache_page_go',$temp);//調用函數
  }else{//正常使用緩存文件
  $temp=file_get_contents($temp);//取出緩存文件內容
  echo $temp;//輸出緩存內容
  $temp=ob_get_contents();//取出緩沖區內容
  ob_get_clean(); //清空緩沖區
  echo $temp; //輸出
  unset($temp,$refresh);/*注銷變量*/
  exit();
  }
  }
  }
  function cache_page_go($file){
  $output=ob_get_contents();//獲取緩沖區內容
  ob_get_clean(); //清空緩沖區
  file_put_contents($file,$output,LOCK_EX);//寫入緩存文件
  echo $output;//輸出緩存內容
  unset($output,$file);/*注銷變量*/
  exit();
  }
  建議將該函數放置在頁面的最開始處

*
  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved