午夜91福利视频,午夜成人在线观看,午夜在线视频免费观看,午夜福利短视频,精品午夜成人免费视频APP

緩存

概述

ThinkPHP采用think\Cache類提(ti)供緩存功能支持。

版本 新增功能
5.0.11 緩存設置方法有效期支持指定過期時間(DateTime
5.0.2 增加remember方法

設置

緩(huan)存支持采用(yong)驅動方式,所(suo)以緩(huan)存在使(shi)用(yong)之前,需(xu)要進(jin)行連接操作,也就是緩(huan)存初始化操作。

$options = [
    // 緩存類型為File
    'type'  =>  'File', 
    // 緩存有(you)效期為永久(jiu)有(you)效
    'expire'=>  0, 
    //緩存前綴
    'prefix'=>  'think',
     // 指定緩(huan)存目錄
    'path'  =>  APP_PATH.'runtime/cache/',
];
Cache::connect($options);

或者通過定(ding)義配(pei)置(zhi)參數的(de)方式(shi),在應用(yong)配(pei)置(zhi)文件(jian)中添加:

'cache'  => [
    'type'   => 'File',
    'path'   => CACHE_PATH,
    'prefix' => '',
    'expire' => 0,
],

支持的緩存(cun)類型(xing)包括file、memcache、wincache、sqlite、redis和xcache。

緩(huan)存參數根據不同的(de)緩(huan)存方(fang)式(shi)會有所區別,通用的(de)緩(huan)存參數如下:

參數 描述
type 緩存類型
expire 緩存有效期 (默認為0 表示永久緩存)
prefix 緩存前綴(默認為空)

使用

緩存(cun)(cun)初始化(hua)之后,就可以進行(xing)相關緩存(cun)(cun)操作了。

如果通過配置文件(jian)方(fang)式定義緩存參數的話,可(ke)以(yi)無需手動進行緩存初始化操(cao)作,可(ke)以(yi)直接進行緩存讀取(qu)和(he)設置等操(cao)作。

設置緩存

設置(zhi)緩存(有效期一(yi)個小時)

Cache::set('name',$value,3600);

如果設(she)置成功返回true,否則(ze)返回false。

V5.0.11版(ban)本開始,緩存有(you)效期(qi)支持指定過期(qi)時間,用法(fa):

Cache::set('name',$value,new DateTime('2017-10-1 12:00'));

表示緩(huan)存數據到(dao)2017年10月1日中(zhong)午12點過期。

緩存自增

針(zhen)對數值類型的緩存數據,可以使(shi)用自增操(cao)作,例如:

// name自(zi)增(步進值為1)
Cache::inc('name');
// name自增(步(bu)進值(zhi)為(wei)3)
Cache::inc('name',3);

緩存自減

針對數(shu)值類(lei)型的緩存數(shu)據,可(ke)以使用自減操作(zuo),例(li)如:

// name自減(步進值為1)
Cache::dec('name');
// name自減(jian)(步進值為(wei)3)
Cache::dec('name',3);

獲取緩存

獲(huo)取緩存數據(ju)可以使用:

dump(Cache::get('name')); 

如果name值不存在,則默認返回 false

支持指定默(mo)認值(zhi),例如:

dump(Cache::get('name','')); 

表示如果name值不存在(zai),則返回空字符串。

刪除緩存

Cache::rm('name'); 

獲取并刪除緩存

Cache::pull('name'); 

如果name值不存在,則返回null

清空緩存

Cache::clear(); 

不存在則寫入緩存數據后返回(v5.0.2+

Cache::remember('name',function(){
	return time();
});

獲取緩存對象

可(ke)以獲取(qu)緩存對象(xiang),并且(qie)調用驅動類的高級方(fang)法,例如:

$cache = Cache::init();
// 獲取緩存對象句柄
$handler = $cache->handler();

助手函數

系統對緩存操作提供了助手函數cache,用法如下:

$options = [
     // 緩存類(lei)型為File
    'type'   => 'File', 
     // 緩(huan)存(cun)有(you)效期為(wei)永久有(you)效
    'expire' => 0,
     // 指(zhi)定緩(huan)存目錄
    'path'   => APP_PATH . 'runtime/cache/', 
];

// 緩存初始化(hua)
// 不(bu)進(jin)行緩存(cun)初始化的話(hua),默認(ren)使(shi)用配置文件(jian)中的緩存(cun)配置
cache($options);

// 設置緩(huan)存數據
cache('name', $value, 3600);
// 獲(huo)取緩(huan)存數據
var_dump(cache('name'));
// 刪除緩(huan)存(cun)數據
cache('name', NULL);

// 設置緩存的(de)同時并且進行參數設置
cache('test', $value, $options); 

緩存標簽

支持給緩(huan)存數據打標簽(qian),例如(ru):

Cache::tag('tag')->set('name1','value1');
Cache::tag('tag')->set('name2','value2');
// 或者批量設置緩存標簽
Cache::set('name1','value1');
Cache::set('name2','value2');
Cache::tag('tag',['name1','name2']);
// 清除tag標簽的緩存數據
Cache::clear('tag');

同時使用多個緩存類型

如果要(yao)同(tong)時使用多個緩存類型進行操作的話(hua),可以(yi)做如下配(pei)置:

'cache' =>  [
    // 使用(yong)復(fu)合緩存(cun)類型
    'type'  =>  'complex',
    // 默認(ren)使用(yong)的緩(huan)存
    'default'   =>  [
        // 驅動方式
        'type'   => 'File',
        // 緩存保存目錄(lu)
        'path'   => CACHE_PATH,
    ],
    // 文件緩存
    'file'   =>  [
        // 驅動方式(shi)
        'type'   => 'file',
        // 設置不同(tong)的緩存保存目(mu)錄
        'path'   => RUNTIME_PATH . 'file/',
    ],  
    // redis緩存
    'redis'   =>  [
        // 驅動方式
        'type'   => 'redis',
        // 服(fu)務器地址
        'host'       => '127.0.0.1',
    ],     
],

cache.type配(pei)(pei)置(zhi)為complex之后,就可(ke)以(yi)(yi)緩存(cun)多(duo)個緩存(cun)類型和緩存(cun)配(pei)(pei)置(zhi),每個緩存(cun)配(pei)(pei)置(zhi)的方法和之前一樣,并且你可(ke)以(yi)(yi)給相同類型的緩存(cun)類型(使用不同的緩存(cun)標識)配(pei)(pei)置(zhi)不同的緩存(cun)配(pei)(pei)置(zhi)參(can)數。

當使用

Cache::set('name', 'value');
Cache::get('name');

的時候,其實使用的是default緩(huan)(huan)(huan)存標(biao)(biao)識的緩(huan)(huan)(huan)存配置,如果(guo)需要切換到(dao)其它(ta)的緩(huan)(huan)(huan)存標(biao)(biao)識操作(zuo),可以使用:

// 切換到file操作
Cache::store('file')->set('name','value');
Cache::get('name');
// 切換到redis操作
Cache::store('redis')->set('name','value');
Cache::get('name');
文檔最后更新時間:2018-04-26 10:51:41

文檔
目錄(lu)

深色
模式

切換
寬(kuan)度