PHP清除缓存的几种方法总结


Posted in PHP onSeptember 12, 2017

PHP清除缓存的几种方法总结

现在开发的项目是用tp3.1版本的,在开发过程中我们常常会遇到页面缓存的问题(特别是html的缓存);刷新后还是旧版的数,再刷新下还是旧版数据,慢慢的开始怀疑人生了,哈哈;所以在开发过程中我们又必要每次及时清除缓存。

清除缓存的方法大概有3种(都是实际经历总结):

第一:在项目的配置文件config.php里加入下面两行代码就能避免缓存问题

'TMPL_CACHE_ON' => false,//禁止模板编译缓存 
 'HTML_CACHE_ON' => false,//禁止静态缓存

这两行代码在这里我就不解释啦;

第二:TP框架的缓存目录存放在文件夹public_html\App\Runtime下,每次开发完成后手动删除里面的所有文件
(感觉有点暴力和愚蠢),但这种方法最蠢,测试和线上环境如果没有权限就删除不了了;

第三:我自己写的清除缓存类,我们可以在业务控制器同目录下新建自己的"清除缓存"的类(核心思想就是利用TP框架自带的缓存类来操作,TP框架的源代码大家可以看下),通过url访问的方式来清楚缓存,

代码如下:

// +----------------------------------------------------------------------
// | Copyright (c) 2007-2009 
// +----------------------------------------------------------------------
// $Id: ClearAction.class.php 668 2016-05-03 11:43:12Z chenhaibo $
/**
 +------------------------------------------------------------------------------
 * 清除缓存
 +------------------------------------------------------------------------------
 * @author haibo <chenhaibo0806@163.com>
 * @version $Id: ClearAction.class.php 668 2016-05-03 11:43:12Z chenhaibo $
 +------------------------------------------------------------------------------
 */
class ClearAction extends Action{
/**
+----------------------------------------------------------
* 清除缓存
+----------------------------------------------------------
* @access public
+----------------------------------------------------------
* @return void
+----------------------------------------------------------
*/
public function clearcache() {
 $_token = isset($_GET['token']) ? trim($_GET['token']) : '';
 $_operate = isset($_GET['operate']) ? trim($_GET['operate']) : '';
 
 $_option = array();
 if($_operate == 'runtime') $_option['temp'] = RUNTIME_PATH; //各种缓存数据存放目录
 if($_operate == 'cache') $_option['temp'] = CACHE_PATH;
 if($_operate == 'data') $_option['temp'] = DATA_PATH;
 if($_operate == 'fields') $_option['temp'] = DATA_PATH."/_fields";
 
 import('Think.Util.Cache.CacheFile');
 $CacheFile = new CacheFile($_option);
 $CacheFile->clear();
 echo 'success';
 }

clear函数其实就是删除缓存文件。

PHP清除缓存的几种方法总结

浏览器器地址栏输入地址:

http://test.xxx.cn/Clear-clearcache?operate=fields  //测试环境
http://www.xxx.cn/Clear-clearcache?operate=fields  //正式环境

如有疑问请留言或者到本站社区交流讨论,感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!

PHP 相关文章推荐
新安装的MySQL数据库需要注意的安全知识
Jul 30 PHP
PHP注释实例技巧
Oct 03 PHP
PHP小教程之实现链表
Jun 09 PHP
PHP错误Allowed memory size of 67108864 bytes exhausted的3种解决办法
Jul 28 PHP
php获取客户端电脑屏幕参数的方法
Jan 09 PHP
PHP中iconv函数知识汇总
Jul 02 PHP
CodeIgniter与PHP5.6的兼容问题
Jul 16 PHP
PHP中的数组处理函数实例总结
Jan 09 PHP
PHP自定义函数获取URL中一级域名的方法
Aug 23 PHP
详解PHP中websocket的使用方法
Sep 15 PHP
PDO::getAvailableDrivers讲解
Jan 28 PHP
浅谈Laravel中使用Slack进行异常通知
May 29 PHP
PHP 传输会话curl函数的实例详解
Sep 12 #PHP
基于ThinkPHP5.0实现图片上传插件
Sep 25 #PHP
Laravel中encrypt和decrypt的实现方法
Sep 24 #PHP
php安装扩展mysqli的实现步骤及报错解决办法
Sep 23 #PHP
php mysql PDO 查询操作的实例详解
Sep 23 #PHP
PHP实现权限管理功能示例
Sep 22 #PHP
php生成毫秒时间戳的实例讲解
Sep 22 #PHP
You might like
PHP跨平台获取服务器IP地址自定义函数分享
2014/12/29 PHP
PHP动态生成指定大小随机图片的方法
2016/03/25 PHP
laravel 5.3中自定义加密服务的方案详解
2017/05/09 PHP
关于Anemometer图形化显示MySQL慢日志的工具搭建及使用的详细介绍
2020/07/13 PHP
JQuery 动画卷页 返回顶部 动画特效(兼容Chrome)
2010/02/15 Javascript
Js基础学习资料
2010/11/23 Javascript
基于JQuery实现CheckBox全选全不选
2011/06/27 Javascript
JS注释所产生的bug 即使注释也会执行
2013/11/19 Javascript
js判断页面中是否有指定控件的简单实例
2014/03/04 Javascript
用Jquery.load载入页面后样式没了页面混乱的解决方法
2014/10/20 Javascript
jquery简单图片切换显示效果实现方法
2015/01/14 Javascript
使用AmplifyJS组件配合JavaScript进行编程的指南
2015/07/28 Javascript
jQuery实现指定内容滚动同时左侧或其它地方不滚动的方法
2015/08/08 Javascript
javascript实现input file上传图片预览效果
2015/12/31 Javascript
AngularJs html compiler详解及示例代码
2016/09/01 Javascript
jQuery图片轮播(二)利用构造函数和原型创建对象以实现继承
2016/12/06 Javascript
微信小程序Server端环境配置详解(SSL, Nginx HTTPS,TLS 1.2 升级)
2017/01/12 Javascript
详解vue.js移动端配置flexible.js及注意事项
2019/04/10 Javascript
react实现antd线上主题动态切换功能
2019/08/12 Javascript
详解如何在Javascript中使用Object.freeze()
2020/10/18 Javascript
[53:50]CHAOS vs Mineski 2019国际邀请赛小组赛 BO2 第一场 8.16
2019/08/18 DOTA
Python HTMLParser模块解析html获取url实例
2015/04/08 Python
详细解读tornado协程(coroutine)原理
2018/01/15 Python
Python调用服务接口的实例
2019/01/03 Python
python实现感知机线性分类模型示例代码
2019/06/02 Python
python日期相关操作实例小结
2019/06/24 Python
CSS3 animation实现逐帧动画效果
2016/06/02 HTML / CSS
HTML5标签与HTML4标签的区别示例介绍
2013/07/18 HTML / CSS
html5教程画矩形代码分享
2013/12/04 HTML / CSS
H5 canvas实现贪吃蛇小游戏
2017/07/28 HTML / CSS
KIKO MILANO西班牙官网:意大利领先的化妆品和护肤品品牌
2019/05/03 全球购物
英国比较机场停车场网站:Airport Parking Essentials
2019/12/01 全球购物
夫妻房产协议书的格式
2014/10/11 职场文书
师德师风自查材料
2014/10/14 职场文书
新郎结婚感言
2015/07/31 职场文书
如何利用 CSS Overview 面板重构优化你的网站
2021/10/24 HTML / CSS