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 相关文章推荐
[转帖]PHP世纪万年历
Dec 06 PHP
php多用户读写文件冲突的解决办法
Nov 06 PHP
Laravel 5框架学习之表单验证
Apr 08 PHP
PHP实现微信发红包程序
Aug 24 PHP
Symfony实现行为和模板中取得request参数的方法
Mar 17 PHP
PHP设计模式之装饰器模式实例详解
Feb 07 PHP
PHP排序二叉树基本功能实现方法示例
May 26 PHP
详解Laravel5.6 Passport实现Api接口认证
Jul 27 PHP
详解PHP神奇又有用的Trait
Mar 25 PHP
PHP中str_split()函数的用法讲解
Apr 11 PHP
PHP实现给定一列字符,生成指定长度的所有可能组合示例
Jun 22 PHP
laravel框架模板之公共模板、继承、包含实现方法分析
Aug 30 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 is_file 判断给定文件名是否为一个正常的文件
2010/05/10 PHP
带密匙的php加密解密示例分享
2014/01/29 PHP
PHP批量生成静态HTML的简单原理和方法
2014/04/20 PHP
PHP MVC框架skymvc支持多文件上传
2016/05/26 PHP
thinkphp框架类库扩展操作示例
2019/11/26 PHP
jQuery 性能优化指南(3)
2009/05/21 Javascript
javascript 三种编解码方式
2010/02/01 Javascript
JS在IE和FireFox之间常用函数的区别小结
2010/03/12 Javascript
关于js获取radio和select的属性并控制的代码
2011/05/12 Javascript
img onload事件绑定各浏览器均可执行
2012/12/19 Javascript
web前端设计师们常用的jQuery特效插件汇总
2014/12/07 Javascript
Angular 根据 service 的状态更新 directive
2016/04/03 Javascript
必备的JS调试技巧汇总
2016/07/20 Javascript
jQuery实现边框动态效果的实例代码
2016/09/23 Javascript
vue元素实现动画过渡效果
2017/07/01 Javascript
vue点击按钮动态创建与删除组件功能
2019/12/29 Javascript
JS实现字体背景跑马灯
2020/01/06 Javascript
通过实例解析javascript Date对象属性及方法
2020/11/04 Javascript
Python SQLite3数据库操作类分享
2014/06/10 Python
Python中使用pprint函数进行格式化输出的教程
2015/04/07 Python
浅谈Python2.6和Python3.0中八进制数字表示的区别
2017/04/28 Python
单链表反转python实现代码示例
2018/02/08 Python
Python datetime和unix时间戳之间相互转换的讲解
2019/04/01 Python
python3.4 将16进制转成字符串的实例
2019/06/12 Python
基于Python实现天天酷跑功能
2021/01/06 Python
mui几种页面跳转方式对比总结概括
2017/08/18 HTML / CSS
亚洲领先的设计购物网站:Pinkoi
2020/11/26 全球购物
完美实现CSS垂直居中的11种方法
2021/03/27 HTML / CSS
工程质量承诺书
2014/03/27 职场文书
合作协议书范本
2014/10/25 职场文书
2014年维稳工作总结
2014/11/18 职场文书
死者家属慰问信
2015/03/24 职场文书
Go语言 go程释放操作(退出/销毁)
2021/04/30 Golang
厉害!这是Redis可视化工具最全的横向评测
2021/07/15 Redis
java调用Restful接口的三种方法
2021/08/23 Java/Android
Python可视化动图组件ipyvizzu绘制惊艳的可视化动图
2022/04/21 Python