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); //刪除緩存