国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專(zhuān)欄INFORMATION COLUMN

PHP學(xué)習(xí)記錄(session與cookie)

silenceboy / 810人閱讀

摘要:為應(yīng)用程序啟用會(huì)話(huà)狀態(tài)時(shí),將檢查應(yīng)用程序中每個(gè)頁(yè)面請(qǐng)求是否有瀏覽器發(fā)送的值。如果未提供任何值,則將啟動(dòng)一個(gè)新會(huì)話(huà),并將該會(huì)話(huà)的值隨響應(yīng)一起發(fā)送到瀏覽器。

session

什么是session

session在計(jì)算機(jī)中,尤其在網(wǎng)絡(luò)應(yīng)用中,稱(chēng)為"會(huì)話(huà)控制";具體到web中的session指的就是用戶(hù)在瀏覽某個(gè)網(wǎng)站時(shí),從進(jìn)入網(wǎng)站到瀏覽器關(guān)閉所經(jīng)過(guò)的這段時(shí)間,也就是用戶(hù)瀏這個(gè)網(wǎng)站所花費(fèi)的時(shí)間。因此從上述的定義中可以看到,session是一個(gè)特定的時(shí)間概念。

為什么要使用session

HTTP協(xié)議是一種無(wú)狀態(tài)的協(xié)議,即同一個(gè)客戶(hù)端的本次請(qǐng)求和上次請(qǐng)求沒(méi)有對(duì)應(yīng)關(guān)系,http服務(wù)器并不知道這兩個(gè)請(qǐng)求來(lái)自同一個(gè)客戶(hù)端;優(yōu)點(diǎn)在于減輕服務(wù)器的壓力,缺點(diǎn)在于每次請(qǐng)求會(huì)傳輸大量重復(fù)的內(nèi)容信息

session提供在PHP腳本中定義全局變量的方法,使得這個(gè)全局變量在同一個(gè)session中對(duì)于所有的PHP腳本文本內(nèi)都有效。所以,session是基于HTTP服務(wù)器的用于保持狀態(tài)的方法;

session允許通過(guò)將數(shù)據(jù)存儲(chǔ)到HTTP服務(wù)器中,以在整個(gè)用戶(hù)會(huì)話(huà)過(guò)程中保持該數(shù)據(jù);所以,session不僅是一個(gè)時(shí)間概念,還包括了特定的用戶(hù)和服務(wù)器;

session的工作原理

會(huì)話(huà)由一個(gè)唯一標(biāo)識(shí)符標(biāo)識(shí),可使用session_id函數(shù)讀取此標(biāo)識(shí)符。為PHP應(yīng)用程序啟用會(huì)話(huà)狀態(tài)時(shí),將檢查應(yīng)用程序中每個(gè)頁(yè)面請(qǐng)求是否有瀏覽器發(fā)送的sessionID值。如果未提供任何sessionID值,則PHP將啟動(dòng)一個(gè)新會(huì)話(huà),并將該會(huì)話(huà)的sessionID值隨響應(yīng)一起發(fā)送到瀏覽器。

默認(rèn)情況下,sessionID值存儲(chǔ)在cookie中,也可以實(shí)現(xiàn)在URL中存儲(chǔ)sessionID
只要一直使用相同的sessionID值來(lái)發(fā)送請(qǐng)求,會(huì)話(huà)就被視為活動(dòng)的,如果特定會(huì)話(huà)的請(qǐng)求間隔超過(guò)指定的超時(shí)值(以秒為單位),則該會(huì)話(huà)被視為已過(guò)期。如果使用過(guò)期的sessionID值發(fā)送的請(qǐng)求將生成一個(gè)新的會(huì)話(huà)

session相關(guān)的函數(shù)

/*
 * session_start
 * 描述:?jiǎn)?dòng)新會(huì)話(huà)或者重用現(xiàn)有會(huì)話(huà)
 * 語(yǔ)法:bool session_start([array $options = []])
 * ---在服務(wù)器上創(chuàng)建了一個(gè)sessionID,并創(chuàng)建了一個(gè)存儲(chǔ)session的文件
 * 說(shuō)明:
 * A. $options參數(shù)是一個(gè)關(guān)聯(lián)數(shù)組,如果提供的話(huà),則會(huì)用其中的項(xiàng)目覆蓋"會(huì)話(huà)配置"中的配置選項(xiàng);
 * B. 如果通過(guò)GET或者POST方式,或者使用cookie提交了會(huì)話(huà)ID,則會(huì)重用現(xiàn)有會(huì)話(huà)
 *
 * session_id
 * 描述:獲取/設(shè)置當(dāng)前會(huì)話(huà)ID
 * 語(yǔ)法:string session_id([string $id])
 * 說(shuō)明:
 * A. 如果指定$id參數(shù)的值,則使用指定值作為會(huì)話(huà)ID
 * B. 如果設(shè)置$id參數(shù)的值,必須在調(diào)用session_start()函數(shù)之前調(diào)用session_id()函數(shù)
 *
 * session_name
 * 描述:讀取/設(shè)置會(huì)話(huà)名稱(chēng)
 * 語(yǔ)法:string session_name([string $name])
 * 說(shuō)明:
 * A. 如果指定$name參數(shù),session_name()函數(shù)會(huì)更新會(huì)話(huà)名稱(chēng),并返回原來(lái)的會(huì)話(huà)名稱(chēng);
 * B. 如果指定$name參數(shù),必須在調(diào)用session_start函數(shù)之前調(diào)用session_name()函數(shù)
 *
 * session_destroy
 * 描述:銷(xiāo)毀一個(gè)會(huì)話(huà)中的全部數(shù)據(jù)
 * 語(yǔ)法:bool session_destroy()
 *
 * chrome瀏覽器cookies存儲(chǔ)地:
 * ~/Library/Application Support/Google/Chrome/Default/Cookies
 * 將Cookies加擴(kuò)展名sqlite,然后用sqlite工具打開(kāi)Cookies
 */

PHP配置中session片段

/*
 * 在/Applications/XAMPP/etc/php.ini文件中可以查看下列片段:
 *
 * session.auto_start(boolean)
 * 描述:session.auto_start指定會(huì)話(huà)模塊是否在請(qǐng)求開(kāi)始時(shí)自動(dòng)啟動(dòng),默認(rèn)為0(不啟動(dòng)),一般不進(jìn)行修改該配置;
 *
 * session.name(string)
 * 描述:指定會(huì)話(huà)名以用做cookid的名字,只能由字母數(shù)字組成,默認(rèn)為"PHPSESSID";
 *
 * session.save_handler(string)
 * 描述:定義用來(lái)存儲(chǔ)和獲取與會(huì)話(huà)關(guān)聯(lián)的數(shù)據(jù)的處理器的名字,默認(rèn)為files,即文件;
 *
 * session.save_path(string)
 * 描述:定義傳遞給存儲(chǔ)處理器的參數(shù),如果選擇默認(rèn)的files文件處理器,則值則是文件的路徑;
 *
 * session.gc_maxlifetime(integer)
 * 描述:指定過(guò)了多少秒之后數(shù)據(jù)就會(huì)被視為"垃圾"并被清除;
 *
 * session.gc_probability(integer)、session.gc_divisor(integer)
 * 描述:定義在每個(gè)會(huì)話(huà)初始化時(shí)啟動(dòng)gc進(jìn)程的概率,此概率通過(guò)gc_probability/gc_divisor計(jì)算,值為1000,表示為千分之一
 *
 */


cookie

什么是cookie

HTTP cookie也叫Web cookie或者瀏覽器cookie,是服務(wù)器發(fā)送到用戶(hù)瀏覽器并保存在瀏覽器上的數(shù)據(jù),它會(huì)在瀏覽器下一次發(fā)起請(qǐng)求時(shí)被攜帶并發(fā)送到服務(wù)器上;

HTTP cookieHTTP標(biāo)頭的組成部分;

session是存儲(chǔ)在服務(wù)器端,cookie是存儲(chǔ)在瀏覽器端

cookie的作用

會(huì)話(huà)狀態(tài)管理(如用戶(hù)登錄狀態(tài)、購(gòu)物車(chē)):如十天自動(dòng)登錄

個(gè)性化設(shè)置(如用戶(hù)自定義設(shè)置)

瀏覽器行為跟蹤(如跟蹤分析用戶(hù)信息)

cookie相關(guān)的函數(shù)

/*
 * setcookie函數(shù)
 * 描述:設(shè)置cookie
 * 語(yǔ)法:bool setcookie(string $name[, string $value = ""[, int $expire = 0[, string $path = ""[, string $domain = ""]]]])
 * 說(shuō)明:
 * A. $name參數(shù)用于指定cookie名稱(chēng);
 * B. $value參數(shù)用于設(shè)置cookie值;
 * C. $expire參數(shù)用于設(shè)置cookie的生命周期(Unix時(shí)間戳);
 * D. $path參數(shù)用于設(shè)置服務(wù)器上可用cookie的路徑;如果設(shè)置為"/",則代表在整個(gè)域名內(nèi)都有效,
 *    如果設(shè)置為"/foo/",則僅代表在域名內(nèi)的/foo目錄及其子目錄內(nèi)有效;
 * E. $domain參數(shù)用于設(shè)置cookie可用的域名范圍(包含子域名);
 *
 * 注意:會(huì)話(huà)期cookie是指瀏覽器關(guān)閉之后會(huì)被自動(dòng)刪除,也就是它僅在會(huì)話(huà)期間有效;
 *      會(huì)話(huà)期cookie不需要指定過(guò)期時(shí)間(Expire);
 *
 * 持久cookie:指定一個(gè)特定的過(guò)期時(shí)間(Expire);
 *
 */


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

轉(zhuǎn)載請(qǐng)注明本文地址:http://specialneedsforspecialkids.com/yun/28732.html

相關(guān)文章

  • JSP 學(xué)習(xí)記錄

    摘要:對(duì)象具有請(qǐng)求域,即完成客戶(hù)端的請(qǐng)求之前,該對(duì)象一直有效。提交的數(shù)據(jù)量最多不超過(guò)。安全性較低但效率比方式高。適合提交數(shù)據(jù)量大,安全性高的用戶(hù)信息。除非本次會(huì)話(huà)的所有頁(yè)面都關(guān)閉后再重新訪問(wèn)某個(gè)或者,將會(huì)創(chuàng)建新的會(huì)話(huà)。 JSP 簡(jiǎn)介 全名為Java Server Pages,其根本是一個(gè)簡(jiǎn)化的Servlet設(shè)計(jì),實(shí)現(xiàn)了在Java當(dāng)中使用HTML標(biāo)簽。JSP是一種動(dòng)態(tài)網(wǎng)頁(yè)技術(shù)標(biāo)準(zhǔn),也是Java...

    BearyChat 評(píng)論0 收藏0
  • session保存數(shù)據(jù)庫(kù)中以及禁用cookie情況下的處理

    摘要:保存這個(gè)的方式可以采用,這樣在交互過(guò)程中瀏覽器可以自動(dòng)的按照規(guī)則把這個(gè)標(biāo)識(shí)發(fā)揮給服務(wù)器。存放數(shù)據(jù)到數(shù)據(jù)庫(kù)中的默認(rèn)存放是通過(guò)建立一個(gè)名為的文件進(jìn)行存放。 什么是session HTTP協(xié)議是無(wú)狀態(tài)的,我們?cè)跒g覽一個(gè)網(wǎng)站的時(shí)候 網(wǎng)站并不知道你是誰(shuí),為了解決這一點(diǎn)于是有了==會(huì)話(huà)管理==會(huì)話(huà)管理主要包括cookie和session。cookie可以在客戶(hù)端記錄下信息,而session則是記錄...

    keithyau 評(píng)論0 收藏0
  • 負(fù)載均衡中使用Redis實(shí)現(xiàn)共享Session

    摘要:最近在研究架構(gòu)方面的知識(shí),包括數(shù)據(jù)庫(kù)讀寫(xiě)分離,緩存和隊(duì)列,集群,以及負(fù)載均衡,今天就來(lái)先學(xué)習(xí)下我在負(fù)載均衡中遇到的問(wèn)題,那就是共享的問(wèn)題。一負(fù)載均衡負(fù)載均衡把眾多的訪問(wèn)量分擔(dān)到其他的服務(wù)器上,讓每個(gè)服務(wù)器的壓力減少。 最近在研究Web架構(gòu)方面的知識(shí),包括數(shù)據(jù)庫(kù)讀寫(xiě)分離,Redis緩存和隊(duì)列,集群,以及負(fù)載均衡(LVS),今天就來(lái)先學(xué)習(xí)下我在負(fù)載均衡中遇到的問(wèn)題,那就是session共享...

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

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

0條評(píng)論

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