thinkphp的f方法只能用于缓存简单数据类型,不支持有效期和缓存对象。s()缓存方法支持有效期,又称动态缓存方法,使用示例如下:
代码如下:
// 使用data标识缓存$data数据
s('data',$data); //前面的是缓存标示,后面的是缓存的数据
代码如下:
// 缓存$data数据3600秒
s('data',$data,3600);
代码如下:
// 删除缓存数据
s('data',null); //第一个参数时缓存的标识名
代码如下:
$cache=s($cachename);//设置缓存标示
// 判断是否有这个查询缓存
if(!$cache){ //$cache 中是缓存的标示(每个查询都对应一个缓存 即 不同的查询有不同的缓存)
$cache=$video->where($map)->order($order)->limit($limit)->select();
foreach($cache as $key=>$value){
$userlist=$user->where(id=.$value['user_id'])->find();
$cache[$key][nickname]=$userlist['nickname'];
}
s($cachename,$cache,3600); //设置缓存的生存时间
}
s($cachename,null); //删除缓存
更多信息请查看IT技术专栏