缓存

本文介绍了缓存数据的初始化,包括如何快速缓存Data数据并保存。在使用查询缓存时,通过Model类的cache方法调用。此外,详细阐述了静态缓存的启用条件,如HTML_CACHE_ON参数和HTML_CACHE_RULES配置。文章讨论了三种静态规则定义方式:全局操作规则、全局模块规则和特定模块操作规则。

缓存数据

1、缓存初始化

cache(array('type'=>'xcache','expire'=>60));
cache(array('type'=>'memcache','host'=>'192.168.1.10','port'=>'11211','prefix'=>'think','expire'=>60));
2、缓存设置
cache('a',$value);
cache('a',$value,300);
cache('a',$value,array('type'=>'file','expire'=>300));
3、读取缓存
$value = cache('a');
4、删除缓存
cache('a',null);
快速缓存

快速缓存Data数据,默认保存在DATA_PATH目录下面:

F('data',$Data);
F('data',$Data,TEMP_PATH);//快速缓存Data数据并保存到指定目录
$Data = F('data');//获取缓存数据
F('data',NULL);//删除缓存数据
查询缓存

在使用查询缓存的时候,只需要调用Model类的cache方法,例如:

$Model->cache(true)->select();
$Model->cache(true,60,'xcache')->select();
静态缓存

使用静态缓存功能,必须开启HTML_CACHE_ON参数,并且使用HTML_CACHE_RULES配置静态缓存规则文件。

'HTML_CACHE_ON'=>true, // 开启静态缓存
'HTML_FILE_SUFFIX'  =>  '.shtml', // 设置静态缓存后缀为.shtml
'HTML_CACHE_RULES'=> array(
    'ActionName(小写)'            => array('静态规则', '静态缓存有效期', '附加规则'), 
    'ModuleName(小写)'            => array('静态规则', '静态缓存有效期', '附加规则'), 
    'ModuleName(小写):ActionName(小写)' => array('静态规则', '静态缓存有效期', '附加规则'),
    '*'                     => array('静态规则', '静态缓存有效期', '附加规则'),
    //…更多操作的静态规则
)
静态缓存文件的根目录在HTML_PATH定义的路径下面,并且只有定义了静态规则的操作才会惊醒静态缓存。

第一种是定义全局的操作静态规则,例如定义所有的read操作的静态规则为:

'read'=>array('{id}','60');
其中,{id}表示取$_GET['id']为静态缓存文件名,第二个参数表示缓存60秒。

第二种是定义全局的模块静态规则,例如定义所有的User模块的静态规则为:

'user:'=>array('User/{:action}_{id}','600')
其中,{:action}表示当前的操作名称。

第三种是定义某个模块的操作的静态规则,例如,需要定义BLog模块的read操作进行静态缓存

'blog:read'=>array('{id}',0)
{More To Write}








评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值