首页 > 代码库 > PHP缓存
PHP缓存
php缓存的方法有很多,最简单的缓存方法就是使用框架。
先说一下smarty的方法:
首先设置缓存文件位置:
1 | $filename = "../cache/huancun.html" ; //缓存文件存放的位置 |
设置缓存间隔:
1 | $time = 10; //缓存有效期10秒 |
判断缓存文件是否存在,如果缓存文件存在直接调用缓存,如果缓存文件不存在重新缓存:
1 2 3 4 5 6 7 8 9 10 11 | if ( file_exists ( $filename ) && (( filemtime ( $filename )+ $time )>= time()) ) { //直接调用缓存 include ( $filename ); } else { //重新缓存 ob_start(); //开启内存缓存 代码部分。。。。。。。<br> <br><br> $smarty ->display( "huancun.html" ); |
$str = ob_get_contents(); //获取内存中的缓存内容
file_put_contents($filename,$str);
1 2 3 | ob_flush(); //关闭内存缓存 } |
如果要使用分页缓存的话需要修改为:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 | <?php $p = 1; if (! empty ( $_GET [ "page" ])) { $p = $_GET [ "page" ]; } $filename = "../cache/huancun{$p}.html" ; //缓存文件存放的位置 $time = 10; //缓存有效期10秒 //判断缓存文件是否存在,如果缓存文件存在直接调用缓存,如果缓存文件不存在重新缓存 if ( file_exists ( $filename ) && (( filemtime ( $filename )+ $time )>= time()) ) { //直接调用缓存 include ( $filename ); } else { //重新缓存 ob_start(); //开启内存缓存 分页代码。。。。。。。。。 $smarty ->display( "huancun.html" ); $str = ob_get_contents(); //获取内存中的缓存内容 file_put_contents ( $filename , $str ); ob_flush(); //关闭内存缓存 } |
同理,如果没有使用smarty模板。只要将ob_start()与ob_flush()之间的代码修改为普通php代码即可。
PHP缓存
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。