程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 網頁編程 >> PHP編程 >> 關於PHP編程 >> php創建session的方法實例詳解,session詳解

php創建session的方法實例詳解,session詳解

編輯:關於PHP編程

php創建session的方法實例詳解,session詳解


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

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

session創建代碼
復制代碼 代碼如下:<?php
echo "------如何保存 session 數據---------<br />";
//1、初始化 session
session_start();
//2、保存數據,可以保存的數據類型包括:字符串、整型、double型,數組,對象等
$_SESSION['name']="百度";//保存字符串
$_SESSION['age']=80;//保存整型

//保存數組
$arr = array("name"=>"小陳","age"=>25,"job"=>"程序員");
$_SESSION['person'] = $arr;

//保存對象
class Dog{
 public $name;
 public $age;
 public $color;
 function __construct($name,$age,$color){
  $this->name=$name;
  $this->age=$age;
  $this->color=$color;
 }
}
$dog = new Dog("小狗",2,"黃色");
$_SESSION['dog'] = $dog;

echo "保存成功";
?>
在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)。

希望本文所述對大家的php程序設計有所幫助。

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved