>  기사  >  백엔드 개발  >  如何实现页面缓存

如何实现页面缓存

WBOY
WBOY원래의
2016-06-23 13:21:491136검색

各位大神,如果的动态页面是INDEX.PHP,我如何实现页面缓存呢?缓存是存在服务器吧?
例如,我的INDEX.PHP代码是这样的:



 session_start () ;
 
include("IncDB.php"); 

$result=mysql_query("SELECT * FROM mates",$link); 
$row=mysql_fetch_row($result); 
//下面是若干PHP代码最后是生成一个动态页面。

 >

我的问题是:
1、要怎么做才能把该页面缓存下来呢?因为该页面内容变化不大,但会有变化。
2、在用户打开INDEX.PHp时,先判断该页面有无页面缓存,如有则显示缓存页面,否则链接数据库显示内容。
3、缓存页面每7天自动更新一次。

我看了网上的一些介绍,如 ob_start(),我基础太差,没学会怎么用,用在哪里。。。麻烦告诉我详细的办法,而不是思路!谢谢各位大神。



回复讨论(解决方案)

把这段代码放到文件开始处

<?php$fn = str_replace('/', '_', $_SERVER['PHP_SELF'] . '.cache';if(file_exists($fn) && time()-filemtime($fn)<7*24*60*60) {  readfile($fn);  exit;}ob_start('cache');function cache($s) {  global $fn;  file_put_contents($fn, $s);  return $s;}?>

是紧跟着放在

后面就可以么?谢谢!

另外,我在哪里能看到这个缓存页面呢?我怎么知道现在打开的页面是缓存页面还是原来 的动态页面呢?谢谢!

我试了,表面看,没有什么变化。不知道有没有起作用。。。

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.