溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶(hù)服務(wù)條款》

怎么在ThinkPHP3.2.3框架中使用Memcache進(jìn)行緩存

發(fā)布時(shí)間:2021-04-13 16:41:16 來(lái)源:億速云 閱讀:217 作者:Leah 欄目:開(kāi)發(fā)技術(shù)

這期內(nèi)容當(dāng)中小編將會(huì)給大家?guī)?lái)有關(guān)怎么在ThinkPHP3.2.3框架中使用Memcache進(jìn)行緩存,文章內(nèi)容豐富且以專(zhuān)業(yè)的角度為大家分析和敘述,閱讀完這篇文章希望大家可以有所收獲。

方法一:原生Memcache的寫(xiě)法

public function test1() {
  $mc = new \Memcache(); //創(chuàng)建Memcache對(duì)象
  $mc->connect("127.0.0.1", 11211); //連接Memcached服務(wù)器
  $mc->set('test1','hello world',0,10); //存儲(chǔ)數(shù)據(jù)
  echo $mc->get('test'); //獲取數(shù)據(jù)
  $mc->delete('test'); //刪除數(shù)據(jù)
  $mc->flush(); //強(qiáng)制刷新全部緩存,即清空Memcached服務(wù)器
  $mc->close(); //斷開(kāi)與Memcached服務(wù)器的連接
}

方法二:直接調(diào)用集成好的Memcache緩存驅(qū)動(dòng)

public function test2() {
  $mc = new \Think\Cache\Driver\Memcache(); //實(shí)例化Memcache驅(qū)動(dòng)
  $mc->set('test2','hello world',60); //寫(xiě)入緩存
  echo $mc->get('test2'); //讀取緩存
  $mc->rm('test2'); //刪除指定緩存
  $mc->clear(); //清空全部緩存
}

方法三:S方法

①直接調(diào)用S方法

public function test3() {
  //緩存初始化
  S(array(
    'type'=>'memcache', //緩存類(lèi)型
    'host'=>'127.0.0.1', //Memcache服務(wù)器地址
    'port'=>'11211', //Memcache端口號(hào)
    'prefix'=>'think', //緩存標(biāo)識(shí)前綴 
    'expire'=>10,) //緩存有效期(時(shí)間為秒)
  );
  //設(shè)置緩存
  S('test3','hello world'); //可以改變緩存時(shí)間:S('test3','hello world',60);
  //讀取緩存
  echo S('test3');
  //刪除緩存
  S('test3',null);
}

②采用對(duì)象方式操作緩存

public function test4() {
  $cache = S(array('type'=>'memcache','prefix'=>'think','expire'=>10)); //緩存初始化
  $cache->test4 = 'hello world'; //設(shè)置緩存
  echo $cache->test4; //獲取緩存
  unset($cache->test4); //刪除緩存
}

手冊(cè)中關(guān)于S方法初始化:如果不傳入type參數(shù),會(huì)讀取配置文件中設(shè)置的DATA_CACHE_TYPE作為默認(rèn)緩存類(lèi)型;如果不傳入prefix參數(shù),會(huì)讀取DATA_CACHE_PREFIX作為默認(rèn)緩存標(biāo)識(shí)前綴;如果不傳入expire參數(shù),會(huì)讀取DATA_CACHE_TIME作為默認(rèn)緩存有效期。

配置文件config.php中,關(guān)于Memcache緩存配置如下:

'DATA_CACHE_TYPE' => 'Memcache', //數(shù)據(jù)緩存類(lèi)型
'DATA_CACHE_PREFIX' => '', //緩存前綴
'DATA_CACHE_TIME' => 10, //數(shù)據(jù)緩存有效期 0表示永久緩存
'DATA_CACHE_COMPRESS' => false, //數(shù)據(jù)緩存是否壓縮緩存

配置之后調(diào)用S方法無(wú)需再初始化

public function test5() {
  //設(shè)置緩存
  S('test5','hello world');
  //讀取緩存
  echo S('test5');
  //刪除緩存
  S('test5',null);
}

上述就是小編為大家分享的怎么在ThinkPHP3.2.3框架中使用Memcache進(jìn)行緩存了,如果剛好有類(lèi)似的疑惑,不妨參照上述分析進(jìn)行理解。如果想知道更多相關(guān)知識(shí),歡迎關(guān)注億速云行業(yè)資訊頻道。

向AI問(wèn)一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI