本文實例講述了CakePHP框架Session設置方法。分享給大家供大家參考,具體如下:
CakePHP Session 存儲選項
CakePHP提供給用戶了3種Session數據保存方式:
	1. CakePHP安裝目下的臨時文件;
	2. 采用PHP的默認機制;
	3. 或者序列化到數據庫中.
對應的設置在core.php中分別為:
define('CAKE_SESSION_SAVE', 'php');# 設置為 'cake',保存session到 /cakedistro/tmp目錄# 設置為 'php',采用PHP的缺省路徑# 設置為 'database',默認采用PHP的機制.
如果選擇在數據庫中存儲,需要在數據庫中建立一張表,在/app/config/sql/sessions.sql有創建數據庫的sql腳本.
無論選擇哪種Session存儲方式,CakePHP的組件方法操作基本一致:
CakePHP Session Component用來與Session進行交互:包括基本的Session讀寫,通過Session來提示錯誤、發出提示消息等等.
Session Component在所有 Cake controller 中默認可用.
	check(string $name);
檢查Session中是否已有$name為鍵值的數據項.
	del(string $name);
	delete(string $name);
刪除$name 指定的 Session 變量。
	error
返回最近由 Cake Session Component 產生的錯誤,常用于調試。
	flash(string $key='flash');
返回最后一條Session中用 setFlash() 設置的消息。如果 $key 已設置,將返回最近存儲于其中的消息.
	read(string $name);
返回 $name 變量值。
	renew
通過創建新的seesion ID,刪除原有的ID,將原有Session中信息更新到新的Session中。
	setFlash(string $flashMessage, string $layout='default', array $params, string $key='flash');
將$flashMessage 中的信息寫入Session(供之后的flash()方法來獲取)。
如果 $leyout 設置為 “default”,該消息被存儲為 '<div class="message">'.$flashMessage.'</div>'。如果$layout 設置為 '',該消息將按原樣保存。如果 $layout 為其他值,該消息以 $layout 所指定的格式保存在 Cake view里。
$params 參數會在未來版本中賦予功能。
$key 允許在鍵下存儲提示消息,flash() 是基于鍵來讀取消息的。
valid當Session有效時返回true,最好在read()操作前用它來確定你要訪問的會話是否確實有效.
	write(string $name, mixed $value);
將變量 $name,$value寫入會話.
希望本文所述對大家PHP程序設計有所幫助。
新聞熱點
疑難解答
圖片精選