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 相关文章推荐
PHP5在Apache下的两种模式的安装
Sep 05 PHP
给apache2.2加上mod_encoding模块後 php5.2.0 处理url出现bug
Apr 12 PHP
php中$this->含义分析
Nov 29 PHP
一个PHP的String类代码
Apr 20 PHP
在PHP中PDO解决中文乱码问题的一些补充
Sep 06 PHP
PHP 第三节 变量介绍
Apr 28 PHP
PHP的mysqli_query参数MYSQLI_STORE_RESULT和MYSQLI_USE_RESULT的区别
Sep 29 PHP
php+mysql数据库实现无限分类的方法
Dec 12 PHP
2款PHP无限级分类实例代码
Nov 11 PHP
PHP使用两个栈实现队列功能的方法
Jan 15 PHP
PHP设计模式之工厂方法设计模式实例分析
Apr 25 PHP
Laravel实现ORM带条件搜索分页
Oct 24 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
mysql_num_rows VS COUNT 效率问题分析
2011/04/23 PHP
基于yaf框架和uploadify插件,做的一个导入excel文件,查看并保存数据的功能
2017/01/24 PHP
PHPCMS手机站伪静态设置详细教程
2017/02/06 PHP
laravel csrf排除路由,禁止,关闭指定路由的例子
2019/10/21 PHP
总结AJAX相关JS代码片段和浏览器模型
2007/08/15 Javascript
js实现弹出窗口、页面变成灰色并不可操作的例子分享
2014/05/10 Javascript
js使用html()或text()方法获取设置p标签的显示的值
2014/08/01 Javascript
jQuery给多个不同元素添加class样式的方法
2015/03/26 Javascript
jQuery往textarea中光标所在位置插入文本的方法
2015/06/26 Javascript
基于JS+Canves实现点击按钮水波纹效果
2016/09/15 Javascript
利用Angular.js限制textarea输入的字数
2016/10/20 Javascript
不得不看之JavaScript构造函数及new运算符
2017/08/21 Javascript
Express + Session 实现登录验证功能
2017/09/08 Javascript
微信小程序scroll-x失效的完美解决方法
2018/07/18 Javascript
移动端如何用下拉刷新的方式实现上拉加载
2018/12/10 Javascript
JavaScript进制转换实现方法解析
2020/01/18 Javascript
js实现选项卡效果
2020/03/07 Javascript
vue 解决在微信内置浏览器中调用支付宝支付的情况
2020/11/09 Javascript
vue3自定义dialog、modal组件的方法
2021/01/04 Vue.js
在类Unix系统上开始Python3编程入门
2015/08/20 Python
Python实现模拟时钟代码推荐
2015/11/08 Python
python实现汉诺塔递归算法经典案例
2021/03/01 Python
Python中文分词实现方法(安装pymmseg)
2016/06/14 Python
python实现神经网络感知器算法
2017/12/20 Python
利用anaconda作为python的依赖库管理方法
2019/08/13 Python
Python3常见函数range()用法详解
2019/12/30 Python
Selenium 滚动页面至元素可见的方法
2020/03/18 Python
python 写一个性能测试工具(一)
2020/10/24 Python
python基于openpyxl生成excel文件
2020/12/23 Python
HTML5实现动画效果的方式汇总
2016/02/29 HTML / CSS
墨尔本照明批发商店:Mica Lighting
2017/12/28 全球购物
行政人员岗位职责
2013/12/08 职场文书
自查自纠工作情况报告
2014/10/29 职场文书
《山中访友》教学反思
2016/02/24 职场文书
检讨书之工作不认真
2019/08/14 职场文书
JAVA springCloud项目搭建流程
2022/05/11 Java/Android