會話技術-------session技術
使用session將會話數據存儲于服務器端,同時使用會話技術可以區分瀏覽器;
為每個會話數據建立獨立的會話數據區(來存儲當前會話的全部數據);每一個會話數據區存在唯一的標志;同時瀏覽器端存儲該唯一的標志;做配對使用;seeionID存儲于cookie中;sessionID在cookie中就是一個普通變量;
服務器響應的時候,就會設置sessionID到cookie中;




開啟session機制:session_start();
在開啟session_start()之前,$_SESSION是不能使用的;


增刪改查;

設定:

判斷:

session的屬性:
有效期:默認會話周期結束;
有效路徑:默認整站有效;
有效域:默認當前域有效;
是否僅安全連接:默認false;
是否僅為http使用httonly:默認false;
session的屬性取決于存儲于瀏覽器端的sessionID的cookie變量;
如果需要更改session數據的屬性,其實是更改存儲在瀏覽器端的seessionID的屬性;
在php。ini中設置;


更改session屬性:


session可以存儲任意數據類型(不包含資源),資源不能序列化,資源是php外部的;
session數據區內的數據是序列化后才存儲的;
$_SESSION數組的下標只能是字符串類型;
session_start()類似于header();前面不能有輸出;
session 數據區的操作:




雖然session銷毀了,但是在腳本周期內$_SESSION中還有數據,但是腳本周期結束后,就不會自動寫入session數據區了(原因是關閉了session機制);因此下次腳本周期就不能獲取session數據了;









創建數據庫表存儲session數據;

讀操作:



刪除操作:

調用了session_destroy()銷毀 session過程中被調用,才會執行delete;

垃圾回收機制“:
如何識別垃圾數據:
加上最后處理時間的字段:

帶時間戳存儲:
”


設置垃圾回收機制概率:






如果不對session的存儲做處理,session默認是以文件的形式存儲的,


項目中的session如數據庫:

注意上面的session_set_save_handler()方法中的參數,如果參數是函數時,必須要用數組的形式,如上,數組中的元素位置必須固定;
cookie和session的區別:





是否自動采用其他方法傳輸sessionID:

默認session的存儲路徑是tmp臨時目錄;



配置文件:
在application目錄下創建一個config目錄;用來配置項目應用程序;
配置文件的內容格式:

一般在框架類中初始化載入配置文件;
static是針對同一個類中所有方法公用;超全局$GLOABALS是針對整個項目,整個項目中都可以使用;

新聞熱點
疑難解答
圖片精選