標籤雲

搜尋此網誌

2008/03/10

php-Cookie 與 Session

bool setcookie ( string $name [, string $value [, int $expire [, string $path [, string $domain [, bool $secure [, bool $httponly]]]]]] )
//設定cookie, , 該行前不能有任何空白, 否則等於有輸出
$expire 設為 0 表示為 session cookie(只存在記憶體中, 而不是硬碟中 )
$path 為 cookie 的有效範圍, 若設為"/" 表示對此網站任何目錄下的頁面都有效
$domain 該 cookie 有效的域名
$secure 設為 1 時, 表示只在 HTTPS 有效

刪除cookie:
設定已經過去的時間, cookie 就會被客戶端清掉


Session:
Session 使用 Session cookie, 並用 Session ID 跟客戶端連接起來

string session_name ( [string $name] )
//Get and/or set the current session name

bool session_start ( void )
//建立session, 若要使用有名稱的session 則需先呼叫session_name ( [string $name] )

string session_cache_limiter ( [string $cache_limiter] )
//參數說明: 'nocache' 不允許任何 client/proxy 快取; 'public' 允許快取; 'private' 不允許 proxy 但允許 client 快取; 使用時須在 session_start 呼叫前

int session_cache_expire ( [int $new_cache_expire] )
//設定/查詢快取失效期限, 回傳值為新的快取期限, 單位為分鐘, 預設為 180 (即 3 小時)

刪除 session: 三步驟:
一)
bool session_destroy ( void )
//Destroys all data registered to a session
二)
setcookie(session_name(), '', time()-3600)
//將客戶端的session cookie刪除,
三)
$_SESSION = array();
//清空super global的 $_SESSION 陣列

session 儲存:
bool session_set_save_handler ( callback $open, callback $close, callback $read, callback $write, callback $destroy, callback $gc )

沒有留言: