thinkphp session設置


弄了半下午終於把thinkphp的session設置搞清楚了.現在的項目是二開的baocms在設置session的時候發現服務器不生成session文件,讓人很是費解,然后就是開始bd,

bd說要生成session文件得設置session_save_path(),session_save_path()必須設置在session_start()之前(坑啊,讓這給坑苦了..)

thinkphp有一個配置SESSION_TYPE ,session驅動(sessionDB)是把session的值存放到數據庫里面的,里面用到了個函數session_set_save_handler(),設置了這個驅動就不會生成session文件了.

 

thinkphp   session函數是一個多元化操作函數,傳入不同的參數調用可以完成不同的功能操作,包括下面一些功能

session在app.class.php static public function run(){}方法中 初始化 把 session_save_path()等屬性設置,

 

Session初始化設置方法 無需手動調用,在App類的初始化工作結束后會自動調用,通常項目只需要配置SESSION_OPTIONS參數即可,SESSION_OPTIONS參數的設置是一個數組,支持的索引名和前面的session初始化參數相同。
默認情況下,初始化之后系統會自動啟動session,如果不希望系統自動啟動session的話,可以設置SESSION_AUTO_START為false,例如:

'SESSION_AUTO_START' =>false

 

SESSION_OPTIONS  

參數名              說明

   id                   session_id值

name                session_name 值

expire               session.gc_maxlifetime 設置值

domain             session.cookie_domain 設置值

use_cookies    session.use_cookies 設置值

use_trans_sid  session.use_trans_sid 設置值

cache_limiter   session_cache_limiter設置值

cache_expire   session_cache_expire設置值

type                 session hander類型,可以使用hander驅動擴展

 

session賦值

session('name','value');  //設置session 相當於 $_SESSION['name'] = 'value';

 Session取值

$value = session('name');

session 刪除

session('name',null); // 刪除name 相當於:unset($_SESSION['name']);

要刪除所有的session,可以使用:session(null); // 清空當前的session 相當於$_SESSION = array();

參考的 文檔http://www.thinkphp.cn/document/137.html

 


免責聲明!

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



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