當前位置:首頁 > PHP教程 > php會話 > 列表

php 怎么創建session?php創建session的方法實例詳解

發布:smiling 來源: PHP粉絲網  添加日期:2018-10-16 11:47:08 瀏覽: 評論:0 

本文實例講述了php創建session的方法。分享給大家供大家參考。具體分析如下:

保存session只需要兩個步驟,開啟session和保存session數據。默認情況下,session保存在服務器端 c:\windows\temp文件夾下(保存的路徑可以在php.ini文件中修改:開啟session.save_path,填寫上保存的路徑即可)。

session創建代碼:

  1. //保存數組 
  2. $arr = array("name"=>"小陳","age"=>25,"job"=>"程序員"); 
  3. $_SESSION['person'] = $arr
  4. //保存對象 
  5. class Dog{ 
  6.  public $name
  7.  public $age
  8.  public $color
  9.  function __construct($name,$age,$color){ 
  10.   $this->name=$name
  11.   $this->age=$age
  12.   $this->color=$color
  13.  } 
  14. $dog = new Dog("小狗",2,"黃色"); 
  15. $_SESSION['dog'] = $dog
  16. echo "保存成功"
  17. ?> 

在C:\windows\temp文件下,找到一個保存session的文件:

說明:

(1)每一個session用分號;隔開。

(2)以第一個session為例:name表示鍵值、s表示字符串(相應:i表示整型,a表示數組,o表示對象等)、4表示長度、"百度"表示鍵值。

細節知識(很重要):

(1)每一個會話(就是打開瀏覽器訪問某個網站,在關閉瀏覽器時,會話也就結束)對應一個session文件;

(2)session文件在執行 session_start()時創建,但此時,該文件為空,如果有session數據,則會寫入該文件;

(3)session 數據默認保留時間為 1440秒,此時間為發呆時間,也就是在這段時間內,沒有使用過該 session 文件(如果有使用過,那該文件的修改時間會自動更新--右鍵查看該文件屬性即可看到)。可以在php.ini文件修改此默認值:session.gc_maxlifetime = 1440;

(4)重中之重:服務器在返回客戶端瀏覽器請求時,會將session的信息( 如:PHPSESSID=0pk6fmamnk1btcgbcf444dnd76 ),以cookie的方式返回給瀏覽器(同樣,你可以使用httpwatch來抓包查看)。當瀏覽器訪問該網站的其它頁面時,根據http協調,會把該cookie信息發送給服務器。服務器再根據該信息,查找到對應的session文件(對應的文件名為:sess_0pk6fmamnk1btcgbcf444dnd76)。

Tags: 創建session php session

分享到:

广西快3最大遗漏值统计表