### 什么是緩存,為什么要用緩存,什么情況下用緩存
為了在大并發時提供更快的響應速度,HDPHP 框架提供了緩存處理機制,操作簡單、高效 ,涵蓋 file 緩存、memcache、redis、mysql 緩存可以根據需要指派不同的緩存處理機制,只需要在配置文件中設置即可。
哪些東西需要緩存:經常要用到,但變動不經常的這些數據
比例主表中有幾項字段是使用關聯表中的序號,而這幾張關聯表幾乎不會變動,而又經常被主表調用。這時這幾張關聯表就最好適用緩存。
緩存:把指定內容讀取后生成臨時文件存儲在指定目錄之中。這就是緩存。
### 緩存與模板緩存
1、道理是一樣的,經常用但不常變動的模板,緩存起來,隨時準備被調用。
2、模板緩存的是模板文件生成的HTML代碼。
### 設置緩存
Cache::set('data',['name'=>'houdunwang.com'],3600);
//緩存數據3600秒
參數1:緩存名,由例可知,是一個二維數組
參數2:緩存值
參數3:緩存時長
針對文件緩存,可以使用簡化方法
f('hd','houdunwang.com');
f('hd','houdunwang.com',3600,'storage/cache'); //指定存儲路徑
### 獲取值
Cache::get('data');
針對文件緩存,可以使用簡化方法
f('hd');
f('hd','[get]',3600,'storage/cache'); //同樣指定了讀取路徑
### 刪除
Cache::del('data');
f(null); //清空所有緩存,同樣可以添加路徑
f('hd','[del]') //刪除指定的緩存
f('hd','[del]',3600,'storage/cache/field'); //刪除指定路徑下的指定緩存
### 清空
Cache::flush();
清空會將所有緩存內容全清空
### 驅動
Cache::driver('file')->set('name','后盾網');
其實就是設置緩存方式,以文件形式,以數據庫形式
### 使用注意
1、使用獲取緩存來判斷所要獲取的緩存是否存在
if(!Cache::get('user')){}
//當指定緩存不存在時,返回null
2、緩存的存儲時間,不會因為其它任何原因而延長!
3、被緩存的數據發生變動后,應當立即更新緩存內容。如果實現?分散實現。