ThinkPHP函数详解:cache方法
cache方法是3.0版本开始新增的缓存管理方法。
注意:3.1.2版本后因cache方法并入原S方法,所以cache方法不再建议使用,用S方法即可。
cache 用于缓存设置、获取、删除操作
用法
cache($name, $value='',$options=null)
参数
name(必须):如果传入数组 则表示进行缓存初始化,如果是字符串则表示缓存赋值、获取或者删除操作。
Value(可选):要设置的缓存值,如果传入null表示删除缓存,默认为空字符串。
options(可选):要设置的缓存参数,如果是数字则表示仅设置有效期
返回值
见详(根据具体的用法返回不同的值)
缓存初始化
cache方法传入数组即表示进行缓存初始化,例如: 复制代码
支持的配置参数根据不同的缓存方式(由type参数设置),通用的缓存参数包括:
参数名
说明
expire
缓存有效期(时间为秒)
length
缓存队列长度
prefix
缓存标识前缀
type
缓存类型
如果没有设置type参数,则默认为文件缓存,cache方法目前可以支持的缓存类型包括File、Apachenote、Apc、Eaccelerator、Memcache、Shmop、Sqlite、Db、Redis、Xcache和WinCache,不同缓存类型的缓存参数可以参考这里:动态缓存 复制代码
缓存初始化操作后返回的是一个缓存实例化对象。
如果你没有进行缓存初始化的话,cache方法会在你进行缓存操作之前自动初始化(用系统默认的缓存方式和缓存参数),默认缓存配置参数包括:
这些具体的缓存参数的用法,我们以后会在快速入门:缓存中详细描述。
缓存设置
缓存初始化之后,就可以进行缓存操作了, 复制代码
复制代码
复制代码
会使用当前配置的缓存方式用name标识来缓存value值。
可以单独设置该缓存数据的有效期,例如:
缓存数据一个小时。
为了保证缓存的安全,建议对返回值做出判断,如果缓存设置失败,则返回false,否则返回true。
3.1.2版本开始也可以直接在设置缓存的同时传入缓存设置参数,例如:
获取缓存
复制代码
如果缓存标识不存在或者已经过期,则返回false,否则返回缓存值。
删除缓存
复制代码
复制代码
删除缓存标识为name的缓存数据。
如果要切换缓存方式,可以再次进行缓存初始化操作。
或者使用下面的方式:
如果你设置了缓存前缀的话,对应的缓存操作只是对应该缓存前缀标识的,不会影响其他的缓存。
ThinkPHP函数详解:cache方法的更多相关文章
- ThinkPHP函数详解:session方法
ThinkPHP函数详解:session方法 Session方法用于Session 设置.获取.删除和管理操作. Session 用于Session 设置.获取.删除和管理操作 用法 sessi ...
- ThinkPHP函数详解:C方法
C方法是ThinkPHP用于设置.获取,以及保存配置参数的方法,使用频率较高.了解C方法需要首先了解下ThinkPHP的配置,因为C方法的所有操作都是围绕配置相关的.ThinkPHP的配置文件采用PH ...
- ThinkPHP函数详解:D方法
从本篇开始,我们会陆续给大家详细说明下框架内置函数的用法. D方法 D方法应该是用的比较多的方法了,用于实例化自定义模型类,是ThinkPHP框架对Model类实例化的一种封装,并实现了单例模式,支持 ...
- ThinkPHP函数详解:cookie方法
cookie函数也是一个多元化操作函数,完成cookie的设置.获取和删除操作. Cookie 用于Cookie 设置.获取.删除操作 用法cookie($name, $value='', $opti ...
- ThinkPHP函数详解:I方法
ThinkPHP的I方法是3.1.3版本新增的,如果你是之前的3.*版本的话,可以直接参考使用3.1快速入门教程系列的变量部分. 概述 正如你所见到的一样,I方法是ThinkPHP众多单字母函数中的新 ...
- ThinkPHP函数详解:U方法
U方法用于完成对URL地址的组装,特点在于可以自动根据当前的URL模式和设置生成对应的URL地址,格式为:U('地址','参数','伪静态','是否跳转','显示域名');在模板中使用U方法而不是固定 ...
- ThinkPHP函数详解:M方法
M方法用于实例化一个基础模型类,和D方法的区别在于:1.不需要自定义模型类,减少IO加载,性能较好:2.实例化后只能调用基础模型类(默认是Model类)中的方法:3.可以在实例化的时候指定表前缀.数据 ...
- ThinkPHP函数详解:import方法
import方法是ThinkPHP框架用于类库导入的封装实现,尤其对于项目类库.扩展类库和第三方类库的导入支持,import方法早期的版本可以和java的import方法一样导入目录和通配符导入,后来 ...
- ThinkPHP函数详解:F方法
我们已经了解了ThinkPHP中的S方法的用法,F方法其实是S方法的一个子集功能,仅用于简单数据缓存,并且只能支持文件形式,不支持缓存有效期,因为采用的是PHP返回方式,所以其效率较S方法较高,因此我 ...
随机推荐
- PHPCMS 2008 SQL注入漏洞
漏洞版本: PHPCMS 2008 漏洞描述: escape()方法无法过滤$genre变量进行二次URL编码,导致SQL注入漏洞产生. <* 参考 http://www.yunsec.net/ ...
- linux cross toolsChain 交叉编译 ARM(转)
转载请注明出处:http://blog.csdn.net/mybelief321/article/details/9076583 安装环境 Linux版本:Ubuntu 12.04 内核版本:L ...
- Hadoop datanode无法启动的错误
在启动Hadoop分布式部署的过程中,发现datanode没有正常启动,查看了一下日志发现报错: java.io.IOException: Incompatible clusterIDs in /op ...
- org.apache.hadoop.io.LongWritable cannot be cast to org.apache.hadoop.io.Text
代码缺少这一行:job.setInputFormatClass(KeyValueTextInputFormat.class);
- [codevs1287]矩阵乘法
题目描述 Description 小明最近在为线性代数而头疼,线性代数确实很抽象(也很无聊),可惜他的老师正在讲这矩阵乘法这一段内容.当然,小明上课打瞌睡也没问题,但线性代数的习题可是很可怕的.小明希 ...
- 【CSS3】Advanced11:Media Queries
1.Browser-size specific CSS @media screen and (max/min-width:1000px){} 2.Orientation-specific CSS? @ ...
- keystone 手动建立租户,用户,角色,服务,端口
建立租户: root@cloud:~# keystone tenant-create --name=admin WARNING: Bypassing authentication using a to ...
- A Tour of Go If with a short statement
Like for, the if statement can start with a short statement to execute before the condition. Variabl ...
- rcp(插件开发)The type XXX cannot be resolved. It is indirectly referenced from required .class files解决办法
如果你在使用插件开发时遇到这个问题: The type org.eclipse.core.resources.IFile cannot be resolved. It is indirectly re ...
- ZOJ 1914 Arctic Network (POJ 2349) MST
http://acm.zju.edu.cn/onlinejudge/showProblem.do?problemCode=1914 http://poj.org/problem?id=2349 题目大 ...