新版PHP7安裝redis擴展並在laravel中運用


前言

網上有關安裝這個redis擴展文檔有很多。多數都是相互借鑒的,里面還提到一定要把redis擴展放在php_igbinary.dll之后才行,否則就沒有效果。
這些大多都是在說老版本php的方法。新版的php7已經智能了很多了,不用這些了,而且,我下載的php7里面根本就沒有php_igbinary.dll這擴展。根本就行不通。
這里着重介紹下php-7.3.6-nts-x64擴展該如何安裝。

下載擴展

下載地址

  1. 一般新版的php,建議選擇比較新的那幾個redis,目前我這里列舉的redis是5.2.1版本。之后,選擇有DownLoads列的windows窗口的那個DLL鏈接,點擊進去。
  2. 進來之后,會看到該擴展適用的幾個版本,如下所示。
  3. 查看自己的php方式,選擇適合自己的版本。
    使用php運行phpinfo();查看自己的php版本和運行方式。

    我的php版本是7.3.6x64的64位系統,運行方式為NTS,也就是非線程安全版。因此,在這里,我選擇7.3 Non Thread Safe (NTS) x64

    然后,點擊就下載到了dll的壓縮包,解壓,就看到需要的dll擴展庫。

安裝並使用

  1. 只需要將上面解壓得到的php_redis.dll,放入php根目錄的ext目錄中即可。

    很多教程上說php_redis.pdb也要放進去,我親自嘗試了,不用放能用正常使用,也不知道這個pdb有啥用,歡迎知道的小伙伴留言告訴我。

  2. 然后,打開php.ini,加入如下代碼就行了,建議和之前的插件放在同一個位置,易於維護。
    extension=redis
    

    不用寫全稱的,只需要寫插件名稱redis就行了,php會按照統一格式發現redi插件的。當然,你非要寫全程extension=php_redis.dll,也是可以的。你看看其他的插件,其他的插件都是插件名,到你這就是全稱,有點格格不入的感覺。

  3. 之后,再次使用php連接redis就可以看到成功了。

redis在laravel的使用

上一步驟,我們已經安裝成功的話,可以在laravel中直接使用。

use Illuminate\Support\Facades\Redis;
// 測試頁面首頁
public function index(){
    // 測試redis
    Redis::set('name', 'Taylor');
    $user = Redis::get('name');
    dd($user);
}

如果上面的代碼你的網站能成功執行,並打印出name的話。那么就代表你的redis已經在成功運行了。
然后,cache緩存和session都可以使用redis代替了。要求也很簡單,修改.env文件cache和session的引擎都修改為redis就行了。

BROADCAST_DRIVER=log
CACHE_DRIVER=redis
QUEUE_CONNECTION=sync
SESSION_DRIVER=redis
SESSION_LIFETIME=120

CACHE_DRIVER: 就是緩存引擎
SESSION_DRIVER:就是session引擎

提示:這里明確說明,不建議使用predis/predis,它的誕生就是為了彌補redis擴展的。
而且,Predis 已被該軟件包的原始作者遺棄,並可能在將來的版本中從 Laravel 中刪除。

附錄截圖

未安裝redis擴展,laravel強行使用redis報錯如下:

安裝redis成功后的 ,再次使用redis效果:


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM