php 5.2 thinkphp 3.2.2 cache,查询缓存-ThinkPHP3.2.3完全开发手册

对于及时性要求不高的数据查询,我们可以使用查询缓存功能来提高性能,而且无需自己使用缓存方法进行缓存和获取。

查询缓存功能支持所有的数据库,并且支持所有的缓存方式和有效期。

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

$Model->cache(true)->where("status=1")->select();

如果使用了cache(true) ,则在查询的同时会根据当前的查询条件等信息生成一个带有唯一标识的查询缓存,如果指定了key的话,则直接生成名称为key的查询缓存 ,例如:

$Model->cache("cache_name")->select();

指定key的方式会让查询缓存更加高效。

默认情况下缓存方式采用DATA_CACHE_TYPE参数设置的缓存方式(系统默认值为File表示采用文件方式缓存),缓存有效期是DATA_CACHE_TIME参数设置的时间,也可以单独制定查询缓存的缓存方式和有效期:

$Model->cache(true,60,"xcache")->select();

表示当前查询缓存的缓存方式为xcache,并且缓存有效期为60秒。

同样的查询,如果没有使用cache方法,则不会获取或者生成任何缓存,即便是之前调用过Cache方法。

如果指定了查询缓存的key的话,则可以在外部通过S方法直接获取查询缓存的内容,例如:

$value = S("cache_name");

除了select方法之外,查询缓存还支持find和getField方法,以及他们的衍生方法(包括统计查询和动态查询方法)。

// 对查询数据缓存60秒

$Model->where($map)->cache("key",60)->find();

具体应用的时候可以根据需要选择缓存方式和缓存有效期。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值