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提取视频网站页面中的FLASH地址的代码
Apr 17 PHP
在smarty模板中使用PHP函数的方法
Apr 23 PHP
php获取从百度搜索进入网站的关键词的详细代码
Jan 08 PHP
一组PHP可逆加密解密算法实例代码
Jan 21 PHP
PHP中的Memcache详解
Apr 05 PHP
PHP+Mysql+Ajax+JS实现省市区三级联动
May 23 PHP
php合并数组中相同元素的方法
Nov 13 PHP
ThinkPHP实现动态包含文件的方法
Nov 29 PHP
Thinkphp+smarty+uploadify实现无刷新上传
Jul 30 PHP
Joomla语言翻译类Jtext用法分析
May 05 PHP
Yii2.0多文件上传实例说明
Jul 24 PHP
PHP开发中解决并发问题的几种实现方法分析
Nov 13 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/06 新手入门
thinkphp实现发送邮件密码找回功能实例
2014/12/01 PHP
php强制用户转向www域名的方法
2015/06/19 PHP
php实现的农历算法实例
2015/08/11 PHP
php、java、android、ios通用的3des方法(推荐)
2016/09/09 PHP
css transform 3D幻灯片特效实现步骤解读
2013/03/27 Javascript
jquery indexOf使用方法
2013/08/19 Javascript
深入理解Javascript里的依赖注入
2014/03/19 Javascript
javascript中的nextSibling使用陷(da)阱(keng)
2014/05/05 Javascript
改变状态栏文字的js代码
2014/06/13 Javascript
js中this的用法实例分析
2015/01/10 Javascript
基于javascript实现随机颜色变化效果
2016/01/14 Javascript
Centos7 中安装 Node.js v4.4.4
2016/11/03 Javascript
详解jQuery事件
2017/01/13 Javascript
JS ES6多行字符串与连接字符串的表示方法
2017/04/26 Javascript
Less 安装及基本用法
2018/05/05 Javascript
layer扩展打开/关闭动画的方法
2019/09/23 Javascript
vue+element-ui JYAdmin后台管理系统模板解析
2020/07/28 Javascript
Vue + Element-ui的下拉框el-select获取额外参数详解
2020/08/14 Javascript
[01:09:50]VP vs Pain 2018国际邀请赛小组赛BO2 第二场
2018/08/20 DOTA
安装ElasticSearch搜索工具并配置Python驱动的方法
2015/12/22 Python
Python中实例化class的执行顺序示例详解
2018/10/14 Python
selenium+python实现自动登陆QQ邮箱并发送邮件功能
2019/12/13 Python
python机器学习库xgboost的使用
2020/01/20 Python
python实现拼图小游戏
2020/02/22 Python
MoviePy常用剪辑类及Python视频剪辑自动化
2020/12/18 Python
python 基于selectors库实现文件上传与下载
2020/12/31 Python
浅谈html5增强的页面元素
2016/06/14 HTML / CSS
座谈会主持词
2014/03/20 职场文书
学习走群众路线心得体会
2014/11/05 职场文书
见义勇为事迹材料
2014/12/24 职场文书
五年级语文教学反思
2016/03/03 职场文书
2016年“9.22”世界无车日活动小结
2016/04/05 职场文书
竞选稿之小学班干部
2019/10/31 职场文书
python not运算符的实例用法
2021/06/30 Python
mysql 联合索引生效的条件及索引失效的条件
2021/11/20 MySQL