亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

溫馨提示×

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

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

ThinkPHP6.0中Session和Cookie機制有什么變化

發布時間:2021-01-16 10:32:28 來源:億速云 閱讀:280 作者:小新 欄目:編程語言

小編給大家分享一下ThinkPHP6.0中Session和Cookie機制有什么變化,希望大家閱讀完這篇文章之后都有所收獲,下面讓我們一起去探討吧!

Session

新的Session機制不依賴PHP內置的Session會話機制,完全獨立實現,優勢在于可以兼容任何的運行環境,而且配置參數也大為簡化。

新版你不能再使用$_SESSION或者任何php內置的session函數操作Session,必須通過think\Session類或者think\facade\Session靜態代理類操作Session數據。

Session對于很多API接口應用來說,不是必須的,而隨著前后端分離的應用架構設計越來越多,因此6.0的Session默認是關閉的,系統把Session相關的功能設計成一個獨立的中間件,如果你需要使用Session可以單獨在應用的中間件定義文件中開啟。

默認安裝后,在app目錄下的middleware.php中間件定義文件中,對可能需要使用的系統中間件預置了注釋,你可以直接取消注釋,加上:

// Session初始化
'think\\middleware\\SessionInit',

該中間件的作用主要是初始化SessionId,并注入當前的請求對象。初始化的時候會自動讀取config目錄下的session.php配置。

默認使用文件的方式保存Session數據,支持使用redis、memcache以及memcached。

內置的Session驅動默認配置下,都是支持跨應用讀取Session數據的。如果你需要區分不同的應用,保持各個應用的Session數據獨立,可以在應用的session配置文件中設置prefix參數,例如:

'prefix' => 'admin',

并且為了防止Session數據過多,文件方式寫入Session數據的時候支持垃圾回收機制。可以配置gc_divisor和gc_maxlifetime兩個參數來設置GC回收。

Session數據會在當前請求結束后,自動寫入,一般只會寫入一次。Session數據寫入之前會首先進行序列化,默認的序列化方法是serialize/unserialize,你可以在session配置文件中設置serialize參數(數組)來改變默認的序列化機制,例如:

'serialize' => ['json_encode', 'json_decode'],

Session類本身的用法和之前版本基本一致,增加了push方法用于追加一個session數組。

Cookie

Cookie的存取機制是分開設計的,讀取操作是通過$_COOKIE讀取,寫入則通過可擴展的方式滿足不同運行環境的Cookie寫入要求。Cookie數據的寫入操作也是在當前請求發送響應數據之前統一寫入。

但在實際使用中,Cookie的用法和之前類似,區別在于不再支持前綴配置和清空操作。

看完了這篇文章,相信你對“ThinkPHP6.0中Session和Cookie機制有什么變化”有了一定的了解,如果想了解更多相關知識,歡迎關注億速云行業資訊頻道,感謝各位的閱讀!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

中江县| 合阳县| 英超| 磴口县| 呼和浩特市| 台安县| 罗城| 团风县| 三台县| 连城县| 新巴尔虎左旗| 敦化市| 固阳县| 荣昌县| 夹江县| 谢通门县| 亳州市| 永善县| 沁水县| 梁山县| 会东县| 同德县| 托克托县| 昌邑市| 巴塘县| 虎林市| 旌德县| 绥滨县| 新巴尔虎左旗| 祁阳县| 仁寿县| 曲靖市| 娄底市| 邹平县| 枝江市| 南城县| 东阳市| 洛宁县| 青川县| 红安县| 开封县|