亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

PHP laravel緩存cache機制詳解

 更新時間:2022年10月24日 11:41:26   作者:camellia  
Laravel中的cache為我們提供了三種緩存機制:Redis,memcache,以及框架的文件緩存。本文主要和大家聊聊cache中的文件緩存,感興趣的小伙伴可以跟隨小編一起學習一下

Laravel中的cache為我們提供了三種緩存機制。

Redis,memcache,以及框架的文件緩存。

這里主要看的是cache中的文件緩存。

一、訪問多個緩存存儲

使用 Cache 門面,你可以使用 store 方法訪問不同的緩存存儲器,傳入 store 方法的鍵就是 cache 配置文件中 stores 配置數組里列出的相應的存儲器:

$value = Cache::store('file')->get('foo');
Cache::store('redis')->put('bar', 'baz', 600);  // 10分鐘

二、從緩存中獲取數據

1.獲取數據并設置默認值

(1):正常取值

$value = Cache::get('key');

(2):如果不存在,附默認值

$value = Cache::get('key', 'default');

(3):使用閉包操作,附默認值

$value = Cache::get('key', function() {
    return DB::table(...)->get();
});

2.檢查緩存項是否存在

has 方法用于判斷緩存項是否存在,如果值為 null 或 false 該方法會返回 false:

if (Cache::has('key')) {
    //
}

3.數值增加/減少

increment 和 decrement 方法可用于調整緩存中的整型數值。這兩個方法都可以接收第二個參數來指明緩存項數值增加和減少的數目:

Cache::increment('key');
Cache::increment('key', $amount);
Cache::decrement('key');
Cache::decrement('key', $amount);

4.獲取 & 存儲

有時候你可能想要獲取緩存項,但如果請求的緩存項不存在時給它存儲一個默認值。例如,你可能想要從緩存中獲取所有用戶,或者如果它們不存在的話,從數據庫獲取它們并將其添加到緩存中,你可以通過使用 Cache::remember 方法實現:

$value = Cache::remember('users', $seconds, function() {
    return DB::table('users')->get();
});

如果緩存項不存在,傳遞給 remember 方法的閉包被執(zhí)行并且將結果存放到緩存中。

你還可以使用 rememberForever 方法從緩存中獲取數據或者將其永久存儲起來:

$value = Cache::rememberForever('users', function() {
    return DB::table('users')->get();
});

5.獲取 & 刪除

如果你需要從緩存中獲取緩存項然后刪除,你可以使用 pull 方法,和 get 方法一樣,如果緩存項不存在的話返回 null:

$value = Cache::pull('key');

三、緩存中存儲數據

1.獲取存儲數據

你可以使用 Cache 門面上的 put 方法在緩存中存儲數據。當你在緩存中存儲數據的時候,需要指定數據被緩存的時間(秒數):

Cache::put('key', 'value', $seconds);

如果沒有傳遞緩存時間到 put 方法,則緩存項永久有效:

Cache::put('key', 'value');

除了傳遞緩存項失效時間,你還可以傳遞一個代表緩存項有效時間的 PHP Datetime 實例:

$expiresAt = Carbon::now()->addMinutes(10);
Cache::put('key', 'value', $expiresAt);

2.緩存不存在時存儲數據

add 方法只會在緩存項不存在的情況下添加數據到緩存,如果數據被成功添加到緩存返回 true,否則,返回 false:

Cache::add('key', 'value', $seconds);

3.永久存儲數據

forever 方法用于持久化存儲數據到緩存,這些值必須通過 forget 方法手動從緩存中移除:

Cache::forever('key', 'value');

四、從緩存中移除數據

可以使用 Cache 門面上的 forget 方法從緩存中移除緩存項數據:

Cache::forget('key');

還可以通過設置緩存有效期為 0 或負數來移除緩存項:

Cache::put('key', 'value', 0);
 
Cache::put('key', 'value', -5);

如果要清除所有緩存,可以通過 flush 方法:

Cache::flush();

以上基本上就是laravel框架對文件緩存的操作方法

到此這篇關于PHP laravel緩存cache機制詳解的文章就介紹到這了,更多相關PHP laravel緩存內容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!

相關文章

  • 如何用php根據地址獲取經緯度

    如何用php根據地址獲取經緯度

    這篇文章主要介紹了php根據地址獲取經緯度,對地址經緯度感興趣的同學,可以參考下
    2021-04-04
  • php簡單判斷文本編碼的方法

    php簡單判斷文本編碼的方法

    這篇文章主要介紹了php簡單判斷文本編碼的方法,涉及php數組及iconv方法的相關使用技巧,非常簡單實用,需要的朋友可以參考下
    2015-07-07
  • php+xml編程之xpath的應用實例

    php+xml編程之xpath的應用實例

    這篇文章主要介紹了php+xml編程之xpath的應用,實例分析了xpath的功能、定義及使用技巧,需要的朋友可以參考下
    2015-01-01
  • PHP樹的深度編歷生成迷宮及A*自動尋路算法實例分析

    PHP樹的深度編歷生成迷宮及A*自動尋路算法實例分析

    這篇文章主要介紹了PHP樹的深度編歷生成迷宮及A*自動尋路算法,實例分析了php實現A*尋路算法的技巧,具有一定參考借鑒價值,需要的朋友可以參考下
    2015-03-03
  • PHP+Ajax實現的檢測用戶名功能簡單示例

    PHP+Ajax實現的檢測用戶名功能簡單示例

    這篇文章主要介紹了PHP+Ajax實現的檢測用戶名功能,結合簡單實例形式分析了php結合ajax基于事件響應動態(tài)查詢數據庫及用戶名檢測相關操作技巧,需要的朋友可以參考下
    2019-02-02
  • php 保留小數點

    php 保留小數點

    php保留小數點的方法。
    2009-04-04
  • PHP中提問頻率最高的11個面試題和答案

    PHP中提問頻率最高的11個面試題和答案

    這篇文章主要介紹了PHP中提問頻率最高的11個面試題和答案,每個公司都有自己的面試標準,面試和問題是完全取決于你在工作中所扮演的角色,當然也和你的編程技能息息相關,需要的朋友可以參考下
    2014-09-09
  • php中文字符串截取方法實例總結

    php中文字符串截取方法實例總結

    這篇文章主要介紹了php中文字符串截取方法實例,針對常見的字符串截取函數進行了分析比對,并給出了一個完整實例來解決PHP中文字符串截取問題,需要的朋友可以參考下
    2014-09-09
  • php中文語義分析實現方法示例

    php中文語義分析實現方法示例

    這篇文章主要介紹了php中文語義分析實現方法,結合實例形式分析了PHP基于BosonNLP擴展實現中文語義分析的具體操作步驟與相關實現技巧,需要的朋友可以參考下
    2019-09-09
  • php curl_init函數用法

    php curl_init函數用法

    使用PHP的cURL庫可以簡單和有效地去抓網頁。你只需要運行一個腳本,然后分析一下你所抓取的網頁,然后就可以以程序的方式得到你想要的數據了
    2014-01-01

最新評論