系统缓存的
默认方式是在
文件模式下缓存。我们可以定义其他缓存的方式在项目的
配置文件,
修改默认缓存模式XCache(当然,你的环境需要
支持XCache)。
对于文件模式缓存下的缓存
目录,由于缓存数据过多,存在大量文件问题。ThinkPHP还
解决了使哈希目录缓存。
data_cache_subdir= >真的
还可以
设置哈希目录的层次结构,如
data_path_level= > 2
您可以根据哈希缓存自动
创建多个层来缓存目录标识符。
s
方法支持缓存的有效性。在许多
情况下,我们可能不需要有效周期的概念,或者文件的缓存可以满足需求。因此,该系统还提供了一种专门用于文件的快速缓存方法F,F方法只能用于缓存简单的数据
类型,不支持有效和缓存的对象,如以下所示:
/ /缓存存储在data_path目录数据,默认情况下
F(数据的数据,美元);
保存到指定目录的数据缓存数据
F(数据,数据元,temp_path);
F(
用户/数据,为数据);
删除缓存数据
F(数据、空);
获取缓存数据
美元= F(数据的数据);
配置文件config.php
动态缓存,缓存文件存在于
运行时中。
data_cache_type= >文件,
data_cache_time= > '3600,
/ / 'data_cache_subdir= >真 / /开放目录
/ / 'data_cache_level= > 3 / /设置目录级别
行动文件:
函数视图(){
缓存
/ /美元=缓存:缓存:getInstance('caching模式'、'缓存
参数);
/ /美元=缓存:缓存:getInstance('xcache,阵列('expire= > 60));
/ / $缓存->设置('name',价值);或为缓存->名称=价值;
/ /价值= $缓存->得到('name');美元或美元价值=缓存->名称;
/ / $缓存-> RM('name');或取消($缓存->名称);
/ / S('name','数据','3600 ','类型')缓存的捷径
$user=M ('haodetong');
美元的价值=('list);
如果(空($)){
美元美元->选择用户列表=();
S('list,$列表,3600);
这是一个直接从数据库中读取的文件;
转储(列表);
其他{ }
这是缓存文件;
转储(价值);
}
}
第一次访问如下:
再次刷新如下:
下面是一个单独的
介绍快速缓存的方法在ThinkPHP
文件模式缓存可以满足要求,因此该系统还提供了一种快速缓存方法F文件模式的方法。
$
路径…;
$str =asdfasdfasdaaaaaaaaaaaaaaaaaaaaaa ;
f()安迪
这使得内容的字符串美元在.. /公众/运行/个/ andy.php文件
对andy.php内容如下:
< PHP
return'asdfasdfasdaaaaaaaaaaaaaaaaaaaaaa;
>
下面的代码是ThinkPHP缓存方法的概述()
ThinkPHP F方法只能用于缓存的简单数据类型,不支持有效期和缓存对象。S()缓存方法支持的有效期,也被称为动态高速缓存的方法,使用的例子如下:
代码如下:
复制代码代码如下所示:
数据的使用
S(数据,数据元); / /在缓存前面标有,缓存的数据背后
代码如下:
$数据数据缓存 / 3600秒
S(数据,数据元,3600);
代码如下:
复制代码代码如下所示:
删除缓存数据
S(数据、空); / /第一缓存参数名称
代码如下:
cache =美元的($ cachename); / /设置缓存标志
确定
查询缓存是否为
如果(!缓存)缓存是一个缓存的符号(每个查询对缓存有不同的缓存,也就是不同的查询)。
缓存= $视频> >($ map)- >订单($)- >限制($限制)- >选择();
foreach($缓存键= >美元美元值){
用户列表=美元美元用户>,(id=。价值'user_id'} {)->找到();
{ } {缓存美元美元关键昵称} = { } 'nickname美元的用户列表;
}
S(cachename美元美元,缓存,3600); / /设置缓存的生命周期
}
S(cachename美元,null); / /删除缓存