CI框架网页缓存简单用法分析


Posted in PHP onDecember 26, 2018

本文实例讲述了CI框架网页缓存简单用法。分享给大家供大家参考,具体如下:

CodeIgniter 可以让你通过缓存页面来达到更好的性能。

尽管 CodeIgniter 已经相当高效了,但是网页中的动态内容主机的内存 CPU数据库读取速度等因素直接影响了网页的加载速度。 依靠网页缓存, 你的网页可以达到近乎静态网页的加载速度,因为程序的输出结果 已经保存下来了。

缓存是如何工作的?

可以针对到每个独立的页面进行缓存,并且你可以设置每个页面缓存的更新时间。 当页面第一次加载时,缓存将被写入到 application/cache 目录下的文件中去。 之后请求这个页面时,就可以直接从缓存文件中读取内容并输出到用户的浏览器。 如果缓存过期,会在输出之前被删除并重新刷新。

开启缓存

将下面的代码放到任何一个控制器的方法内,你就可以开启缓存了:

$this->output->cache($n); //其中 $n 是缓存更新的时间(单位分钟)

上面的代码可以放在方法的任何位置,它出现的顺序对缓存没有影响, 所以你可以把它放到任何你认为合理的地方。一旦该代码被放在方法内, 你的页面就开始被缓存了。

由于 CodeIgniter 存储缓存的方式,只有通过 view 输出的页面才能缓存。

如果你修改了可能影响页面输出的配置,你需要手工删除掉 你的缓存文件。

在写入缓存文件之前,你需要把 application/cache/ 目录的权限 设置为可写。

删除缓存

如果你不再需要缓存某个页面,你可以删除掉该页面上的缓存代码, 这样它在过期之后就不会刷新了。

注:

删除缓存代码之后并不是立即生效,必须等到缓存过期才会生效。

如果你需要手工删除缓存,你可以使用 delete_cache() 方法:

// Deletes cache for the currently requested URI
$this->output->delete_cache();
// Deletes cache for /foo/bar
$this->output->delete_cache('/foo/bar');

希望本文所述对大家基于CodeIgniter框架的PHP程序设计有所帮助。

PHP 相关文章推荐
php 文本文件的读取效率
Feb 10 PHP
PHP中使用unset销毁变量并内存释放问题
Jul 05 PHP
执行、获取远程代码返回:file_get_contents 超时处理的问题详解
Jun 25 PHP
php中eval函数的危害与正确禁用方法
Jun 30 PHP
Codeigniter中mkdir创建目录遇到权限问题和解决方法
Jul 25 PHP
php中in_array函数用法探究
Nov 25 PHP
php_imagick实现图片剪切、旋转、锐化、减色或增加特效的方法
Dec 15 PHP
浅谈php自定义错误日志
Feb 13 PHP
php实现多城市切换特效
Aug 09 PHP
PHP的全局错误处理详解
Apr 25 PHP
thinkPHP实现的省市区三级联动功能示例
May 05 PHP
彻底搞懂PHP 变量结构体
Oct 11 PHP
CI框架附属类用法分析
Dec 26 #PHP
Yii2.0 RESTful API 基础配置教程详解
Dec 26 #PHP
CI框架实现创建自定义类库的方法
Dec 25 #PHP
PHP中soap用法示例【SoapServer服务端与SoapClient客户端编写】
Dec 25 #PHP
PHP使用SOAP调用API操作示例
Dec 25 #PHP
详解PHP实现支付宝小程序用户授权的工具类
Dec 25 #PHP
PHP正则匹配到2个字符串之间的内容方法
Dec 24 #PHP
You might like
收音机术语解释
2021/03/01 无线电
php中使用explode查找某个字符是否存在的方法
2011/07/12 PHP
详解PHP处理字符串类似indexof的方法函数
2017/06/11 PHP
PHP 应用容器化以及部署方法
2018/02/12 PHP
Laravel5框架添加自定义辅助函数的方法
2018/08/01 PHP
javascript vvorld 在线加密破解方法
2008/11/13 Javascript
jQuery 验证插件 Web前端设计模式(asp.net)
2010/10/17 Javascript
js 限制数字 js限制输入实现代码
2012/12/04 Javascript
按下回车键指向下一个位置的一个函数代码
2014/03/10 Javascript
JavaScript获取网页中第一个链接ID的方法
2015/04/03 Javascript
jQueryUI中的datepicker使用方法详解
2016/05/25 Javascript
js实现日历与定时器
2017/02/22 Javascript
详解vue-router 路由元信息
2017/09/13 Javascript
利用vue.js实现被选中状态的改变方法
2018/02/08 Javascript
关于vue中watch检测到不到对象属性的变化的解决方法
2018/02/08 Javascript
Vue.js 动态为img的src赋值方法
2018/03/14 Javascript
js最实用string(字符串)类型的使用及截取与拼接详解
2019/04/26 Javascript
js实现for循环跳过undefined值示例
2019/07/02 Javascript
在Koa.js中实现文件上传的接口功能
2019/10/08 Javascript
[01:02:32]DOTA2-DPC中国联赛 正赛 iG vs PSG.LGD BO3 第二场 2月26日
2021/03/11 DOTA
Django实现学生管理系统
2019/02/26 Python
Python实现的列表排序、反转操作示例
2019/03/13 Python
基于python的列表list和集合set操作
2019/11/24 Python
Python坐标轴操作及设置代码实例
2020/06/04 Python
浅谈keras中Dropout在预测过程中是否仍要起作用
2020/07/09 Python
Python pip 常用命令汇总
2020/10/19 Python
有abstract方法的类一定要用abstract修饰吗
2016/03/14 面试题
优秀毕业生推荐信
2013/11/02 职场文书
工程技术员岗位职责
2014/03/02 职场文书
五年后的职业生涯规划
2014/03/04 职场文书
电子商务系毕业生自荐信
2014/05/29 职场文书
助人为乐道德模范事迹材料
2014/08/16 职场文书
2014年销售工作总结范文
2014/12/01 职场文书
优秀小学生事迹材料
2014/12/26 职场文书
个人落户申请书怎么写?
2019/06/28 职场文书
CI Games宣布《堕落之王2》使用虚幻引擎5制作 预计将于2023年正式发售
2022/04/11 其他游戏