溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

如何在php項(xiàng)目中創(chuàng)建一個(gè)session

發(fā)布時(shí)間:2021-03-05 15:44:50 來(lái)源:億速云 閱讀:185 作者:Leah 欄目:開(kāi)發(fā)技術(shù)

這篇文章給大家介紹如何在php項(xiàng)目中創(chuàng)建一個(gè)session,內(nèi)容非常詳細(xì),感興趣的小伙伴們可以參考借鑒,希望對(duì)大家能有所幫助。

php有什么用

php是一個(gè)嵌套的縮寫名稱,是英文超級(jí)文本預(yù)處理語(yǔ)言,它的語(yǔ)法混合了C、Java、Perl以及php自創(chuàng)新的語(yǔ)法,主要用來(lái)做網(wǎng)站開(kāi)發(fā),許多小型網(wǎng)站都用php開(kāi)發(fā),因?yàn)閜hp是開(kāi)源的,從而使得php經(jīng)久不衰。

具體分析如下:

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

session創(chuàng)建代碼

復(fù)制代碼 代碼如下:

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

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

//保存對(duì)象
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文件下,找到一個(gè)保存session的文件,打開(kāi)如下圖:

如何在php項(xiàng)目中創(chuàng)建一個(gè)session

說(shuō)明:

(1)每一個(gè)session用分號(hào);隔開(kāi)。
(2)以第一個(gè)session為例:name表示鍵值、s表示字符串(相應(yīng):i表示整型,a表示數(shù)組,o表示對(duì)象等)、4表示長(zhǎng)度、"百度"表示鍵值。

細(xì)節(jié)知識(shí)(很重要):

(1)每一個(gè)會(huì)話(就是打開(kāi)瀏覽器訪問(wèn)某個(gè)網(wǎng)站,在關(guān)閉瀏覽器時(shí),會(huì)話也就結(jié)束)對(duì)應(yīng)一個(gè)session文件;
(2)session文件在執(zhí)行 session_start()時(shí)創(chuàng)建,但此時(shí),該文件為空,如果有session數(shù)據(jù),則會(huì)寫入該文件;
(3)session 數(shù)據(jù)默認(rèn)保留時(shí)間為 1440秒,此時(shí)間為發(fā)呆時(shí)間,也就是在這段時(shí)間內(nèi),沒(méi)有使用過(guò)該 session 文件(如果有使用過(guò),那該文件的修改時(shí)間會(huì)自動(dòng)更新--右鍵查看該文件屬性即可看到)??梢栽趐hp.ini文件修改此默認(rèn)值:session.gc_maxlifetime = 1440;
(4)重中之重:服務(wù)器在返回客戶端瀏覽器請(qǐng)求時(shí),會(huì)將session的信息( 如:PHPSESSID=0pk6fmamnk1btcgbcf444dnd76 ),以cookie的方式返回給瀏覽器(同樣,你可以使用httpwatch來(lái)抓包查看)。當(dāng)瀏覽器訪問(wèn)該網(wǎng)站的其它頁(yè)面時(shí),根據(jù)http協(xié)調(diào),會(huì)把該cookie信息發(fā)送給服務(wù)器。服務(wù)器再根據(jù)該信息,查找到對(duì)應(yīng)的session文件(對(duì)應(yīng)的文件名為:sess_0pk6fmamnk1btcgbcf444dnd76)。

關(guān)于如何在php項(xiàng)目中創(chuàng)建一個(gè)session就分享到這里了,希望以上內(nèi)容可以對(duì)大家有一定的幫助,可以學(xué)到更多知識(shí)。如果覺(jué)得文章不錯(cuò),可以把它分享出去讓更多的人看到。

向AI問(wèn)一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI