php中如何注冊和讀取Session會話


注冊Session會話

 

在php中使用 Session 變量,除了必須要啟動,還要經過一個注冊的過程,注冊和讀取 Session 變量,都要通過訪問 $_SESSION 數組完成。 從PHP 4.1.0版本起,$_SESSION 如同 $_POST、$_GET和 $_COOKIE等一樣成為超級全局數組,但必須在調用 session_start() 函數開啟 Session 之后才能使用。 與 $HTTP_SESSION_VARS 不同,$_SESSION總是具有全局的范圍,因此不要對 $_SESSION 使用 global 關鍵字。 在 $_SESSION 關聯數組中的鍵名具有和 PHP中 普通變量名相同的命名規則。大理石構件來圖加工

會話變量被創建后,全部保存在數組 $_SESSION 中。通過數組 $_SESSION創建一個會話變量很容易,只要直接給該數組添加一個元素就好了。

比如如下的例子會啟動會話,創建一個 Session 變量並賦予一個空值,代碼是如下的:

1

2

3

4

<?php

  session_start();                                       // 啟動 Session

  $_SESSION['name'] = null;                   // 聲明一個名為 admin 的變量,並設置為空值 null。

?>

執行腳本以后, Session 變量就會被保存在服務器端的某一個文件夾中。改文件的位置是通過 php.ini 文件,在 session.save_path 屬性指定的目錄下,為這個訪問用戶單獨創建一個文件,用來保存已經注冊的 Session 變量。打個比方, 某個保存 Session 變量 的文件名為類似 “ sess_09403850rf7sk39s67 ” 的形式,文件名中包含了 Session ID,所以每個訪問用戶在服務器中都有自己的保存 Session 變量文件,而且這個文件可以直接使用文本編輯器來打開。該文件的內容結構如下所示:

變量名 | 類型 : 長度:值 //每個變量都適用相同的結構來保存

如上所述來舉一個簡單的例子 :

1

2

3

4

5

6

7

8

<?php

  //啟動 session

   session_start();

  //注冊 session 變量,賦值為一個用戶名稱

  $_SESSION['usermane'] = "sky";

  //注冊 session 變量,賦值為一個用戶id

  $_SESSION['uid'] = 1;

?>

上面的實例中 Session 注冊了兩個變量,如果在服務器中找到為該用戶保存 Session 變量的文件,打開后可以看到如下的內容:

username | s:6: "sky"; uid | i:1:"1"; // 保存用戶 Session 中注冊的兩個變量的內容

讀取Session會話

 

首先需要判斷會話變量是否有一個會話ID存在,如果不存在,就創建一個,並且使其能夠通過全局數組$_SESSION 進行訪問;如果已經存在,則將這個已經創建的會話變量載入以提供給用戶使用。

例如:判斷存儲用戶名的 Session 會話變量是否為空,如果不為空,則將該會話變量賦予 $my_value,其代碼顯示如下:https://www.furuihua.cn/qifugezhenpingtai/

 

1

2

3

4

5

<?php

  if(!empty($_SESSION['session_name'])){       //判斷存儲用戶名的  Session 會話變量是否為空

    $my_value = $_SESSION['session_name'];     //將會話變量賦予一個變量 $my_value

  }

?>


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM