首頁  >  文章  >  後端開發  >  CakePHP框架Session設定方法

CakePHP框架Session設定方法

高洛峰
高洛峰原創
2017-02-25 16:25:551394瀏覽

本文實例敘述了CakePHP框架Session設定方法。分享給大家供大家參考,具體如下:<br>

CakePHP Session 儲存選項

CakePHP提供給用戶了3種Session資料儲存方式:

1. CakePHP安裝目下的暫存檔案;<br>2. 採用PHP的預設機制;<br>3. 或序列化到資料庫中.

對應的設置在core.php中分別為:

define(&#39;CAKE_SESSION_SAVE&#39;, &#39;php&#39;);
# 设置为 &#39;cake&#39;,保存session到 /cakedistro/tmp目录
# 设置为 &#39;php&#39;,采用PHP的缺省路径
# 设置为 &#39;database&#39;,

#預設採用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);<br>刪除$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”,則訊息儲存為 '45eb2251a8971efd8123d0950a23c539'.$flashMessage.'94b3e26ee717c64999d7867364b1b4a3'。如果$layout 設定為 '',則該訊息將按原樣儲存。如果 $layout 為其他值,則訊息以 $layout 所指定的格式儲存在 Cake view裡。

$params 參數會在未來版本中賦予功能。

$key 允許在鍵下儲存提示訊息,flash() 是基於鍵來讀取訊息的。

valid當Session有效時回傳true,最好在read()操作前用它來決定你要存取的會話是否確實有效.

write(string $name, mixed $value);

將變數$name,$value寫入會話.

更多CakePHP框架Session設定方法相關文章請關注PHP中文網!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn