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 相关文章推荐
Breeze 文章管理系统 v1.0.0正式发布
Dec 14 PHP
用PHP实现维护文件代码
Jun 14 PHP
编写漂亮的代码 - 将后台程序与前端程序分开
Apr 23 PHP
PHP操作MongoDB时的整数问题及对策说明
May 02 PHP
rephactor 优秀的PHP的重构工具
Jun 09 PHP
解析php多线程下载远程多个文件
Jun 25 PHP
php socket实现的聊天室代码分享
Aug 16 PHP
Yii框架调试心得--在页面输出执行sql语句
Dec 25 PHP
php防止网站被攻击的应急代码
Oct 21 PHP
详解配置 Apache 服务器支持 PHP 文件的解析
Feb 15 PHP
PHP实现的分页类定义与用法示例
Jul 05 PHP
在云虚拟主机部署thinkphp5项目的步骤详解
Dec 21 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/03 冲泡冲煮
php的memcached客户端memcached
2011/06/14 PHP
php简单图像创建入门实例
2015/06/10 PHP
php根据地址获取百度地图经纬度的实例方法
2019/09/03 PHP
Javascript & DHTML 实例编程(教程)(三)初级实例篇1—上传文件控件实例
2007/06/02 Javascript
jquery 多行文本框(textarea)高度变化
2013/07/03 Javascript
学习JavaScript设计模式之责任链模式
2016/01/18 Javascript
Vue-Router进阶之滚动行为详解
2017/09/13 Javascript
Node.js+jade+mongodb+mongoose实现爬虫分离入库与生成静态文件的方法
2017/09/20 Javascript
vue学习之mintui picker选择器实现省市二级联动示例
2017/10/12 Javascript
vue实现模态框的通用写法推荐
2018/02/26 Javascript
JavaScript+H5实现微信摇一摇功能
2018/05/23 Javascript
浅谈Vue.js路由管理器 Vue Router
2018/08/16 Javascript
Vue的状态管理vuex使用方法详解
2020/02/05 Javascript
JS+HTML实现自定义上传图片按钮并显示图片功能的方法分析
2020/02/12 Javascript
多页vue应用的单页面打包方法(内含打包模式的应用)
2020/06/11 Javascript
[01:18:31]DOTA2-DPC中国联赛定级赛 LBZS vs Magma BO3第一场 1月10日
2021/03/11 DOTA
基于torch.where和布尔索引的速度比较
2020/01/02 Python
Python实现CNN的多通道输入实例
2020/01/17 Python
python数据类型强制转换实例详解
2020/06/22 Python
解析python 类方法、对象方法、静态方法
2020/08/15 Python
Python 利用argparse模块实现脚本命令行参数解析
2020/12/28 Python
浅析rem和em和px vh vw和% 移动端长度单位
2016/04/28 HTML / CSS
HTML5之SVG 2D入门7—SVG元素的重用与引用
2013/01/30 HTML / CSS
英国领先的男士服装和时尚零售商:Burton
2017/01/09 全球购物
日本索尼音乐商店:Sony Music Shop
2018/07/17 全球购物
园林资料员岗位职责
2013/12/30 职场文书
支行行长竞聘报告
2014/11/06 职场文书
2014年精神文明建设工作总结
2014/11/19 职场文书
拾金不昧感谢信
2015/01/21 职场文书
长城英文导游词
2015/01/30 职场文书
2015年幼儿园安全工作总结
2015/05/12 职场文书
董事长助理工作总结2015
2015/07/23 职场文书
家长对孩子的寒假评语
2015/10/09 职场文书
《珍珠鸟》教学反思
2016/02/16 职场文书
选择比努力更重要?这是长期以来对“努力”的最大误解
2019/07/12 职场文书