成人国产在线小视频_日韩寡妇人妻调教在线播放_色成人www永久在线观看_2018国产精品久久_亚洲欧美高清在线30p_亚洲少妇综合一区_黄色在线播放国产_亚洲另类技巧小说校园_国产主播xx日韩_a级毛片在线免费

資訊專(zhuān)欄INFORMATION COLUMN

PHP面試??贾畷?huì)話控制

lsxiao / 2644人閱讀

摘要:一的會(huì)話也稱(chēng)為。如果啟動(dòng)會(huì)話成功,則函數(shù)返回,否則返回。會(huì)話啟動(dòng)后就可以載入該會(huì)話已經(jīng)注冊(cè)的會(huì)話變量以便使用。但數(shù)組創(chuàng)建的在會(huì)話結(jié)束后就會(huì)失效。預(yù)告本周三更新面試??贾W(wǎng)絡(luò)協(xié)議,敬請(qǐng)期待。

你好,是我琉憶,歡迎您來(lái)到PHP面試專(zhuān)欄。
本周(2019.2-25至3-1)的一三五更新的文章如下:

周一:PHP面試常考之會(huì)話控制
周三:PHP面試??贾W(wǎng)絡(luò)協(xié)議
周五:PHP面試常考題之會(huì)話控制和網(wǎng)絡(luò)協(xié)議

以下正文的內(nèi)容來(lái)自《PHP程序員面試筆試寶典》書(shū)籍,如果轉(zhuǎn)載請(qǐng)保留出處:


最近是換工作潮自己刻意“匯總整理了11篇帶解析的PHP面試題的文檔”,已上傳百度云,關(guān)注公眾號(hào):“琉憶編程庫(kù)”,回復(fù):“php”,下載鏈接我發(fā)給你。
一、session

PHP的會(huì)話也稱(chēng)為Session。PHP在操作Session時(shí),當(dāng)用戶(hù)登錄或訪問(wèn)一些初始頁(yè)面時(shí)服務(wù)器會(huì)為客戶(hù)端分配一個(gè)SessionID。SessionID是一個(gè)加密的隨機(jī)數(shù)字,在Session的生命周期中保存在客戶(hù)端。它可以保存在用戶(hù)機(jī)器的Cookie中,也可以通過(guò)URL在網(wǎng)絡(luò)中進(jìn)行傳輸。

用戶(hù)通過(guò)SessionID可以注冊(cè)一些特殊的變量,稱(chēng)為會(huì)話變量,這些變量的數(shù)據(jù)保存在服務(wù)器端。在一次特定的網(wǎng)站連接中,如果客戶(hù)端可以通過(guò)Cookie或URL找到SessionID,那么服務(wù)器就可以根據(jù)客戶(hù)端傳來(lái)的SessionID訪問(wèn)會(huì)話保存在服務(wù)器端的會(huì)話變量。

Session的生命周期只在一次特定的網(wǎng)站連接中有效,當(dāng)關(guān)閉瀏覽器后,Session會(huì)自動(dòng)失效,之前注冊(cè)的會(huì)話變量也不能再使用。具體的使用步驟如下:

1)初始化會(huì)話。在實(shí)現(xiàn)會(huì)話功能之前必須要初始化會(huì)話,初始化會(huì)話使用session_start()函數(shù)。

bool session_start(void)

該函數(shù)將檢查SessionID是否存在,如果不存在,則創(chuàng)建一個(gè),并且能夠使用預(yù)定義數(shù)組$_SESSION進(jìn)行訪問(wèn)。如果啟動(dòng)會(huì)話成功,則函數(shù)返回TRUE,否則返回FALSE。會(huì)話啟動(dòng)后就可以載入該會(huì)話已經(jīng)注冊(cè)的會(huì)話變量以便使用。
2)注冊(cè)會(huì)話變量。自PHP 4.1以后,會(huì)話變量保存在預(yù)定義數(shù)組$_SESSION中,所以可以以直接定義數(shù)組單元的方式來(lái)定義一個(gè)會(huì)話變量,格式如下:

$_SESSION["鍵名"]="值";

會(huì)話變量定義后被記錄在服務(wù)器中,并對(duì)該變量的值進(jìn)行跟蹤,直到會(huì)話結(jié)束或手動(dòng)注銷(xiāo)該變量。
3)訪問(wèn)會(huì)話變量。要在一個(gè)腳本中訪問(wèn)會(huì)話變量,首先要使用session_start()函數(shù)啟動(dòng)一個(gè)會(huì)話。之后就可以使用$_SESSION數(shù)組訪問(wèn)該變量了。
4)銷(xiāo)毀會(huì)話變量。會(huì)話變量使用完后,刪除已經(jīng)注冊(cè)的會(huì)話變量以減少對(duì)服務(wù)器資源的占用。刪除會(huì)話變量使用unset()函數(shù),語(yǔ)法格式如下:

void unset(mixed $var [, mixed $var [, $... ]])

說(shuō)明:$var是要銷(xiāo)毀的變量,可以銷(xiāo)毀一個(gè)或多個(gè)變量。要一次銷(xiāo)毀所有的會(huì)話變量,使用session_unset();。
5)銷(xiāo)毀會(huì)話。使用完一個(gè)會(huì)話后,要注銷(xiāo)對(duì)應(yīng)的會(huì)話變量,然后再調(diào)用session_destroy()函數(shù)銷(xiāo)毀會(huì)話,語(yǔ)法格式如下:

bool session_destroy ( void )

該函數(shù)將刪除會(huì)話的所有數(shù)據(jù)并清除SessionID,關(guān)閉該會(huì)話。


最近是換工作潮自己刻意“匯總整理了11篇帶解析的PHP面試題的文檔”,已上傳百度云,關(guān)注公眾號(hào):“琉憶編程庫(kù)”,回復(fù):“php”,下載鏈接我發(fā)給你。

二、cookie

Cookie可以用來(lái)存儲(chǔ)用戶(hù)名、密碼、訪問(wèn)該站點(diǎn)的次數(shù)等信息。在訪問(wèn)某個(gè)網(wǎng)站時(shí),Cookie將html網(wǎng)頁(yè)發(fā)送到瀏覽器中的小段信息以腳本的形式保存在客戶(hù)端的計(jì)算機(jī)上。

一般來(lái)說(shuō),Cookie通過(guò)HTTP Headers從服務(wù)器端返回瀏覽器。首先,服務(wù)器端在響應(yīng)中利用Set Cookie Header來(lái)創(chuàng)建一個(gè)Cookie。然后瀏覽器在請(qǐng)求中通過(guò)Cookie Header包含這個(gè)已經(jīng)創(chuàng)建的Cookie,并且將它返回至服務(wù)器,從而完成瀏覽器的驗(yàn)證。

Cookie技術(shù)有很多局限性,例如:
1)多人共用一臺(tái)計(jì)算機(jī),Cookie數(shù)據(jù)容易泄露。
2)一個(gè)站點(diǎn)存儲(chǔ)的Cookie信息有限。
3)有些瀏覽器不支持Cookie。
4)用戶(hù)可以通過(guò)設(shè)置瀏覽器選項(xiàng)來(lái)禁用Cookie。
正是由于以上Cookie的一些局限性,所以,在進(jìn)行會(huì)話管理時(shí),SessionID通常會(huì)選擇Cookie和URL兩種方式來(lái)保存,而不是只保存在Cookie中。

具體而言,Cookie的使用步驟如下:
1)創(chuàng)建Cookie。在PHP中創(chuàng)建Cookie使用setcookie()函數(shù),語(yǔ)法格式如下:

bool setcookie(string $name [, string $value [, int $expire [, string $path [, string $domain [, bool $secure [, bool $httponly ]]]]]])

① $name:表示Cookie的名字。
② $value:表示Cookie的值,該值保存在客戶(hù)端,所以不要保存比較敏感的數(shù)據(jù)。
③ $expire:表示Cookie過(guò)期的時(shí)間,這是一個(gè)UNIX時(shí)間戳,即從UNIX紀(jì)元開(kāi)始的秒數(shù)。對(duì)于$expire的設(shè)置一般通過(guò)當(dāng)前時(shí)間戳加上相應(yīng)的秒數(shù)來(lái)決定。例如,time()+1200表示Cookie將在20min后失效。如果不設(shè)置則Cookie將在瀏覽器關(guān)閉之后失效。
④ $path:表示Cookie在服務(wù)器上的有效路徑。默認(rèn)值為設(shè)定Cookie的當(dāng)前目錄。
⑤ $domain:表示Cookie在服務(wù)器上的有效域名。例如,要使Cookie能在example.com域名下的所有子域都有效,該參數(shù)應(yīng)設(shè)為".example.com"。

2)訪問(wèn)Cookie。通過(guò)setcookie()函數(shù)創(chuàng)建的Cookie是作為數(shù)組的單元,存放在預(yù)定義變量$_COOKIE中。也就是說(shuō),直接對(duì)$_COOKIE數(shù)組單元進(jìn)行賦值也可以創(chuàng)建Cookie。但$_COOKIE數(shù)組創(chuàng)建的Cookie在會(huì)話結(jié)束后就會(huì)失效。

3)刪除Cookie。Cookie在創(chuàng)建時(shí)指定了一個(gè)過(guò)期時(shí)間,如果到了過(guò)期時(shí)間,那么Cookie將自動(dòng)被刪除。在PHP中沒(méi)有專(zhuān)門(mén)刪除Cookie的函數(shù)。如果為了安全方面的考慮,在Cookie過(guò)期之前就想刪除Cookie,那么可以使用setcookie()函數(shù)或$_COOKIE數(shù)組將已知Cookie的值設(shè)為空。
示例代碼如下:

 )
?>

Cookie和Session都是用來(lái)實(shí)現(xiàn)會(huì)話機(jī)制的,由于HTTP協(xié)議是無(wú)狀態(tài)的,所以要想跟蹤一個(gè)用戶(hù)在同一個(gè)網(wǎng)站之間不同頁(yè)面的狀態(tài),需要有一個(gè)機(jī)制,稱(chēng)為會(huì)話機(jī)制。


預(yù)告:本周三更新PHP面試常考之網(wǎng)絡(luò)協(xié)議,敬請(qǐng)期待。

以上內(nèi)容摘自《PHP程序員面試筆試寶典》書(shū)籍,該書(shū)已在天貓、京東、當(dāng)當(dāng)?shù)入娚唐脚_(tái)銷(xiāo)售。

更多PHP相關(guān)的面試知識(shí)、考題可以關(guān)注公眾號(hào)獲?。?strong>琉憶編程庫(kù)

對(duì)本文有什么問(wèn)題或建議都可以進(jìn)行留言,我將不斷完善追求極致,感謝你們的支持。

文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請(qǐng)注明本文地址:http://systransis.cn/yun/30156.html

相關(guān)文章

  • PHP面試考之網(wǎng)絡(luò)協(xié)議

    摘要:是為互聯(lián)網(wǎng)服務(wù)的協(xié)議族,它是網(wǎng)絡(luò)通信協(xié)議的統(tǒng)稱(chēng),由和等協(xié)議組成。預(yù)告本周五更新面試常考題之會(huì)話控制和網(wǎng)絡(luò)協(xié)議,敬請(qǐng)期待。以上內(nèi)容摘自程序員面試筆試寶典書(shū)籍,該書(shū)已在天貓京東當(dāng)當(dāng)?shù)入娚唐脚_(tái)銷(xiāo)售。 你好,是我琉憶,歡迎您來(lái)到PHP面試專(zhuān)欄。本周(2019.2-25至3-1)的一三五更新的文章如下: 周一:PHP面試??贾畷?huì)話控制周三:PHP面試??贾W(wǎng)絡(luò)協(xié)議周五:PHP面試常考題之會(huì)話控...

    joywek 評(píng)論0 收藏0
  • PHP面試考之數(shù)據(jù)結(jié)構(gòu)——鏈表的概念

    摘要:一鏈表鏈表是一種常見(jiàn)的基礎(chǔ)數(shù)據(jù)結(jié)構(gòu),是一種線性表,但是并不會(huì)按線性的順序存儲(chǔ)數(shù)據(jù),而是在每一個(gè)節(jié)點(diǎn)里存到下一個(gè)節(jié)點(diǎn)的指針。指向整個(gè)列表的指針可以被稱(chēng)作訪問(wèn)指針。 你好,是我琉憶,PHP程序員面試筆試系列圖書(shū)的作者。 本周(2019.3.18至3.22)的一三五更新的文章如下: 周一:PHP面試??贾?dāng)?shù)據(jù)結(jié)構(gòu)——鏈表的概念周三:PHP面試常考之?dāng)?shù)據(jù)結(jié)構(gòu)——棧和隊(duì)列周五:PHP面試??贾?..

    dreamans 評(píng)論0 收藏0
  • PHP面試考之設(shè)計(jì)模式——工廠模式

    摘要:工廠模式其實(shí)可以劃分為簡(jiǎn)單工廠模式工廠方法模式抽象工廠模式等。簡(jiǎn)單工廠模式介紹簡(jiǎn)單工廠模式又稱(chēng)為靜態(tài)工廠方法模式,它屬于類(lèi)創(chuàng)建型模式。此模式是對(duì)工廠方法模式的進(jìn)一步擴(kuò)展。 你好,是我琉憶,PHP程序員面試筆試系列圖書(shū)的作者。 本周(2019.3.11至3.15)的一三五更新的文章如下: 周一:PHP面試常考之設(shè)計(jì)模式——工廠模式周三:PHP面試??贾O(shè)計(jì)模式——建造者模式周五:PHP...

    Jiavan 評(píng)論0 收藏0
  • PHP面試考之設(shè)計(jì)模式——建造者模式

    摘要:你好,是我琉憶,程序員面試筆試系列圖書(shū)的作者。建造者模式介紹建造者模式又名生成器模式,是一種對(duì)象構(gòu)建模式。表示被構(gòu)造的復(fù)雜對(duì)象。創(chuàng)建該產(chǎn)品的內(nèi)部表示并定義它的裝配過(guò)程。 你好,是我琉憶,PHP程序員面試筆試系列圖書(shū)的作者。 本周(2019.3.11至3.15)的一三五更新的文章如下: 周一:PHP面試??贾O(shè)計(jì)模式——工廠模式周三:PHP面試??贾O(shè)計(jì)模式——建造者模式周五:PHP面...

    alexnevsky 評(píng)論0 收藏0
  • PHP面試考之設(shè)計(jì)模式——策略模式

    摘要:策略模式介紹策略模式定義了一系列的算法,并將每一個(gè)算法封裝起來(lái),而且使它們還可以相互替換。策略模式讓算法獨(dú)立于使用它的客戶(hù)而獨(dú)立變化。使用策略模式的好處策略模式提供了管理相關(guān)的算法族的辦法。使用策略模式可以避免使用多重條件轉(zhuǎn)移語(yǔ)句。 你好,是我琉憶,PHP程序員面試筆試系列圖書(shū)的作者。 本周(2019.3.11至3.15)的一三五更新的文章如下: 周一:PHP面試??贾O(shè)計(jì)模式——工...

    Drinkey 評(píng)論0 收藏0

發(fā)表評(píng)論

0條評(píng)論

最新活動(dòng)
閱讀需要支付1元查看
<