这篇文章主要为大家详细介绍了PHP缓存页面函数的简单示例,具有一定的参考价值,可以用来参考一下。

对PHP缓存页面函数感兴趣的小伙伴,下面一起跟随512笔记的小编两巴掌来看看吧!

/**

* PHP缓存页面函数

*

* @param

* @arrange 512-笔记网: www.512pic.com

**/

/*****************************************************************

-- 函数名: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();

}

/*** 来自512笔记(www.512pic.com) ***/

建议将该函数放置在页面的最开始处

简单压缩后代码如下:

/**

* PHP缓存页面函数

*

* @param

* @arrange 512-笔记网: www.512pic.com

**/

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();}

/*** 来自512笔记(www.512pic.com) ***/

注:关于PHP缓存页面函数的简单示例的内容就先介绍到这里,更多相关文章的可以留意512笔记的其他信息。

关键词:PHP缓存

您可能感兴趣的文章

php缓存页面,PHP缓存页面函数的简单示例相关推荐

  1. php分页预览函数,PHP分页函数的简单示例

    这篇文章主要为大家详细介绍了PHP分页函数的简单示例,具有一定的参考价值,可以用来参考一下. 感兴趣的小伙伴,下面一起跟随512笔记的小编小韵来看看吧!准备数据: 新建一个数据库 test 执行下面的 ...

  2. php特殊函数,PHP常用特殊运算符号和函数的简单示例

    这篇文章主要为大家详细介绍了PHP常用特殊运算符号和函数的简单示例,具有一定的参考价值,可以用来参考一下. 感兴趣的小伙伴,下面一起跟随512笔记的小玲来看看吧! 注解符号: // 单行注解 多行注解 ...

  3. php的数据校验,php 数据类型校验函数的简单示例

    这篇文章主要为大家详细介绍了php 数据类型校验函数的简单示例,具有一定的参考价值,可以用来参考一下. 对php中数据类型校验函数感兴趣的小伙伴,下面一起跟随512笔记的小编两巴掌来看看吧! 通过这些 ...

  4. 使用 Boost.Math 计算 Jacobi Zeta 函数的简单示例, 并使用相应的 WolframAlpha 命令

    使用 Boost.Math 计算 Jacobi Zeta 函数的简单示例, 并使用相应的 WolframAlpha 命令 实现功能 C++实现代码 实现功能 使用 Boost.Math 计算 Jaco ...

  5. php检测网页内容,php检测网页是否被百度收录函数的简单示例

    这篇文章主要为大家详细介绍了php检测网页是否被百度收录函数的简单示例,具有一定的参考价值,可以用来参考一下. 感兴趣的小伙伴,下面一起跟随512笔记的小玲来看看吧! 使用:传入一个网址,如 http ...

  6. 使用php函数判断数字,PHP 几个常用数字判断函数的简单示例

    这篇文章主要为大家详细介绍了PHP 几个常用数字判断函数的简单示例,具有一定的参考价值,可以用来参考一下. 对PHP的几个常用数字判断函数代码感兴趣的小伙伴,下面一起跟随512笔记的小编两巴掌来看看吧 ...

  7. php 遍历目录函数,PHP 遍历指定目录所有文件函数的简单示例(可指定文件类型)...

    这篇文章主要为大家详细介绍了PHP 遍历指定目录所有文件函数的简单示例(可指定文件类型),具有一定的参考价值,可以用来参考一下. 对PHP遍历指定目录下所有文件函数,可指定文件类型感兴趣的小伙伴,下面 ...

  8. php简单抽奖,php 简单随机抽奖函数的简单示例

    这篇文章主要为大家详细介绍了php 简单随机抽奖函数的简单示例,具有一定的参考价值,可以用来参考一下. 对php编写的简单随机抽奖函数感兴趣的小伙伴,下面一起跟随512笔记的小编两巴掌来看看吧! /* ...

  9. php字符串分隔函数,php字符串分割函数的简单示例

    这篇文章主要为大家详细介绍了php字符串分割函数的简单示例,具有一定的参考价值,可以用来参考一下. 对php字符串分割函数感兴趣的小伙伴,下面一起跟随512笔记的小编两巴掌来看看吧! php中 exp ...

最新文章

  1. 关于js中的this
  2. AWARD BIOS设置详解
  3. chrome 常用快捷键(可以摆脱鼠标哦)
  4. 机器学习算法基础——机器学习概述
  5. JS 数组 各项操作
  6. iOS中的MVC设计模式
  7. rust盖错了怎么拆除_细说Rust错误处理
  8. JavaBean和Servlet
  9. 一步一步搭建mysql_Linux——搭建PHP开发环境第一步:mysql
  10. JavaScript获取距离某天前或后的日期
  11. lucene全文检索的概念
  12. 微信小程序云开发教程-JavaScript入门(4)-捕捉异常
  13. Multisim应用举例
  14. 让人糊里糊涂的HTTP、TCP、UDP、Socket
  15. 海天讲座(一)最优传输理论
  16. input正则邮箱_JS正则表达式验证email邮箱是否正确
  17. 课堂派考试可以切屏吗_雨课堂考试可以切屏吗?能切出去搜答案吗
  18. html中padding在ie8兼容性,怎么解决bootstrap在各版本IE浏览器中的兼容性问题?
  19. 记录一个在latex中使文章段落中每行两端对齐的方法
  20. 盘点测试分析工具资源,文章教程/视频教程等你来体验!

热门文章

  1. Python教程:丛入门到实践
  2. python 清华镜像pip install
  3. 007_控制器可扩展性
  4. spring相关资源
  5. playSwift第五章(函数和闭包)
  6. mysql更换主键遇到的一个问题
  7. 基于Session的认证方式_认证流程_Spring Security OAuth2.0认证授权---springcloud工作笔记114
  8. springcloud工作笔记105---springboot2.x实现优雅的关闭服务
  9. STM32工作笔记0097---OEM厂是什么意思
  10. Android学习笔记---23_网络通信之网络图片查看器