范文 |
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); //删除缓存 |