PHP Session 使用範例說明

PHP Session 使用範例說明

PHP Session 使用範例說明

 

資料來源:http://www.wibibi.com/info.php?tid=135

 

PHP Session 的功能與 Cookie 很類似,不同的地方在於 session 是儲存在伺服器端的檔案,在 PHP3(含)以前的版本,可是沒有 session 可以用的唷!感謝 PHP 研發團隊的努力,因為 session 確實改善了許多以往 cookie 容易產生的安全性問題,整體而言,使用 session 是比使用 Cookie 來得安全許多,但相對的伺服器的負荷會比較大就是了。

Session Cookie 各有其優點與缺點,建議可以兩者一起搭配使用,一方面把非必要性的資料用 Cookie 處理,可以節省伺服器的負荷,另一方面把必要性的資料用 session 處理,可以增加網站的安全性,以下就分享 Session 的應用與流程。

一、啟用 Session

Session Cookie 一樣都是要啟用的,啟用 session 請使用 session_start() 函數,而且必須放在程式的最開頭,還沒輸出任何東西之前,否則會出錯唷!就像下方範例這樣。

<?php session_start(); ?>
<html>
 <body> ……something </body>
</html>
 


二、設定 session 的變數值

設定 session 的變數值很簡單,直接給値就可以了,用法就像 $_SESSION[‘ 變數 ‘] = 値。

<?php 
 session_start();
 $_SESSION[‘UserName’]=’Jordan’;
?>

在此範例中,我們設定了一個變數 UserName 的値是 Jordan,你可以解讀為會員名稱是 Jordan

三、讀取 session 並輸出於網頁

在上一個步驟,我們設定好了 UserName 的値,接著以下範例要將這個值輸出到網頁上。

<?php 
 session_start();
 echo $_SESSION[‘UserName’];
?>

以上範例輸出結果就是「Jordan」這樣。

四、刪除 session

還記得前面說的 session 是儲存在伺服器端的檔案嗎?如果這樣的檔案太多的話,可能會影響到伺服器的效能,所以沒有用到或是已經使用完的 session(例如會員已經登出),建議把 session 刪除,釋放出主機的資源。

兩種刪除 php session 的方法

  • unset($_SESSION[‘變數名稱‘]);
  • session_destroy();

第一種方法只會刪除單一的 session,第二種方法則會把所有的 session 刪除,使用上需謹慎。

 

 

 

 


發表迴響

你的電子郵件位址並不會被公開。 必要欄位標記為 *