| setcookie?- 發(fā)送 Cookie。 語(yǔ)法: ? setcookie ( string $name [, string $value = "" [, int $expire = 0 [, string $path = "" [, string $domain = "" [, bool $secure = false [, bool $httponly = false ]]]]]] ) ? setcookie()?定義了 Cookie,會(huì)和剩下的 HTTP 頭一起發(fā)送給客戶端。 和其他 HTTP 頭一樣,必須在腳本產(chǎn)生任意輸出之前發(fā)送 Cookie(由于協(xié)議的限制)。 請(qǐng)?jiān)诋a(chǎn)生任何輸出之前(包括 <html> 和 <head> 或者空格)調(diào)用本函數(shù)。 一旦設(shè)置 Cookie 后,下次打開頁(yè)面時(shí)可以使用 $_COOKIE 讀取。 Cookie 值同樣也存在于 $_REQUEST?全局變量中。 參數(shù) 
| 參數(shù) | 必需的 | 描述 | 
|---|
 
| name | 是 | Cookie 名稱。 |  
| value | 否 | Cookie 值。 這個(gè)值儲(chǔ)存于用戶的電腦里,請(qǐng)勿儲(chǔ)存敏感信息。 比如 name 是 'cookiename', 可通過(guò) $_COOKIE['cookiename'] 獲取它的值。 |  
| expire | 否 | Cookie 的過(guò)期時(shí)間。 這是個(gè) Unix 時(shí)間戳,即 Unix 紀(jì)元以來(lái)(格林威治時(shí)間 1970 年 1 月 1 日 00:00:00)的秒數(shù)。 也就是說(shuō),基本可以用?time()?函數(shù)的結(jié)果加上希望過(guò)期的秒數(shù)。 或者也可以用?mktime()。 time() 60*60*24*30 就是設(shè)置 Cookie 30 天后過(guò)期。 如果設(shè)置成零,或者忽略參數(shù), Cookie 會(huì)在會(huì)話結(jié)束時(shí)過(guò)期(也就是關(guān)掉瀏覽器時(shí))。 |  
| path | 否 | Cookie 有效的服務(wù)器路徑。 設(shè)置成 '/' 時(shí),Cookie 對(duì)整個(gè)域名 domain 有效。 如果設(shè)置成 '/foo/', Cookie 僅僅對(duì) domain 中 /foo/ 目錄及其子目錄有效(比如 /foo/bar/)。 默認(rèn)值是設(shè)置 Cookie 時(shí)的當(dāng)前目錄。 |  
| domain | 否 | Cookie 的有效域名/子域名。 設(shè)置成子域名(例如 'www.example.com'),會(huì)使 Cookie 對(duì)這個(gè)子域名和它的三級(jí)域名有效(例如 w2.www.example.com)。 要讓 Cookie 對(duì)整個(gè)域名有效(包括它的全部子域名),只要設(shè)置成域名就可以了(這個(gè)例子里是 'example.com')。 |  
| secure | 否 | 設(shè)置這個(gè) Cookie 是否僅僅通過(guò)安全的 HTTPS 連接傳給客戶端。 設(shè)置成 TRUE 時(shí),只有安全連接存在時(shí)才會(huì)設(shè)置 Cookie。 如果是在服務(wù)器端處理這個(gè)需求,程序員需要僅僅在安全連接上發(fā)送此類 Cookie (通過(guò) $_SERVER["HTTPS"] 判斷)。 |  
| httponly | 否 | 設(shè)置成 TRUE,Cookie 僅可通過(guò) HTTP 協(xié)議訪問(wèn)。 這意思就是 Cookie 無(wú)法通過(guò)類似 JavaScript 這樣的腳本語(yǔ)言訪問(wèn)。 要有效減少 XSS 攻擊時(shí)的身份竊取行為,可建議用此設(shè)置(雖然不是所有瀏覽器都支持),不過(guò)這個(gè)說(shuō)法經(jīng)常有爭(zhēng)議。 PHP 5.2.0 中添加。 TRUE 或 FALSE |  返回值如果在調(diào)用本函數(shù)以前就產(chǎn)生了輸出,setcookie() 會(huì)調(diào)用失敗并返回 FALSE。 如果 setcookie() 成功運(yùn)行,返回 TRUE。當(dāng)然,它的意思并非用戶是否已接受 Cookie。 $value = 'something from somewhere';
setcookie("TestCookie", $value);
setcookie("TestCookie", $value, time() 3600);  /* 1 小時(shí)過(guò)期  */
setcookie("TestCookie", $value, time() 3600, "/~rasmus/", "example.com", 1);?相關(guān)函數(shù)header()?- 發(fā)送原生 HTTP 頭
setrawcookie()?- 發(fā)送未經(jīng) URL 編碼的 cookie    ?來(lái)源:https://www./content-1-513801.html |