PHP基礎回顧之cookie和session(三)
Cookie 是什麼? cookie 常用於***識別使用者***。cookie 是一種伺服器***留在使用者計算機上的小檔案***。每當同一臺計算機通過瀏覽器請求頁面時,這臺計算機將會發送 cookie。通過 PHP,您能夠建立並取回 cookie 的值。
如何建立Cookie ? setcookie() 函式用於設定 cookie。setcookie() 函式必須位於 標籤之前。 setcookie(name, value, expire, path, domain);
如何取回Cookie值 ? $_COOKIE[“user”]
<html> <head> <meta charset="utf-8"> <title>菜鳥教程(runoob.com)</title> </head> <body> <?php if (isset($_COOKIE["user"])) echo "歡迎 " . $_COOKIE["user"] . "!<br>"; else echo "普通訪客!<br>"; ?> </body> </html>
**如何刪除 Cookie?**使過期日期變更為過去的時間點。
<?php
// 設定 cookie 過期時間為過去 1 小時
setcookie("user", "", time()-3600);
?>
如果瀏覽器不支援 Cookie 該怎麼辦? 一種方式是通過表單傳遞資料。
PHP Session PHP session 變數用於***儲存關於使用者會話(session)的資訊***,或者***更改使用者會話(session)的設定***。Session 變數***儲存單一使用者的資訊***,並且***對於應用程式中的所有頁面都是可用***。
Session 的工作機制是:為每個訪客建立一個唯一的 id (UID),並基於這個 UID 來儲存變數。UID 儲存在 cookie 中,或者通過 URL 進行傳導。並且
會話資訊是臨時的,在使用者離開網站後將被刪除**。
開始 PHP Session 啟動會話***session_start() 函式必須位於 標籤之前*** <?php session_start(); ?>
儲存 Session 變數
<?php session_start(); // 儲存 session 資料 $_SESSION['views']=1; ?> <html> <head> <meta charset="utf-8"> <title>菜鳥教程(runoob.com)</title> </head> <body> <?php // 檢索 session 資料 echo "瀏覽量:". $_SESSION['views']; ?> </body> </html>
銷燬 Session 使用 unset() 或 session_destroy() 函式。unset() 函式用於釋放指定的 session 變數;session_destroy() 函式徹底銷燬 session。
<?php
session_start();
if(isset($_SESSION['views']))
{
unset($_SESSION['views']);
}
?>
<?php
session_destroy();
?>