php建立session的方法執行個體詳解_php技巧

來源:互聯網
上載者:User

本文執行個體講述了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程式設計有所協助。

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.