- 相關推薦
PHP語言中Session的概念
什么是Session呢?
Session直接翻譯成中文比較困難,一般都譯成時域。在計算機專業(yè)術語中,Session是指一個終端用戶與交互系統(tǒng)進行通信的時間間隔,通常指從注冊進入系統(tǒng)到注銷退出系統(tǒng)之間所經(jīng)過的時間。具體到Web中的Session指的就是用戶在瀏覽某個網(wǎng)站時,從進入網(wǎng)站到瀏覽器關閉所經(jīng)過的這段時間,也就是用戶瀏覽這個網(wǎng)站所花費的時間。因此從上述的定義中我們可以看到,Session實際上是一個特定的時間概念。
需要注意的是,一個Session的概念需要包括特定的客戶端,特定的服務器端以及不中斷的操作時間。A用戶和C服務器建立連接時所處的Session同B用戶和C服務器中建立連接時所處的Sessions是兩個不同的Session。
那什么是Session的解決方案呢?
我們知道,用戶訪問一個網(wǎng)站時往往需要瀏覽許多網(wǎng)頁。對于一個通過PHP構筑的網(wǎng)站來說,用戶在訪問的過程中需要執(zhí)行許多的PHP腳本。然而由于HTTP協(xié)議自身的特點,用戶每執(zhí)行一個PHP腳本都需要和Web服務器重新建立連接。又由于無狀態(tài)記憶的特點,此次連接無法得到上次連接的狀態(tài)。這樣,用戶在一個PHP腳本中對一個變量進行了賦值操作,而在另外一個PHP腳本中卻無法得到這個變量的值。例如,用戶在負責登錄的PHP腳本中設置了$user="wind",卻無法在另一個PHP腳本中通過調用$user來獲得“wind”這個值。也就是說,在PHP中無法設置全局變量。每個PHP腳本中所定義的變量都是只在這個腳本內有效的局部變量。
Session解決方案,就是要提供在PHP腳本中定義全局變量的方法,使得這個全局變量在同一個Session中對于所有的PHP腳本都有效。上面我們提到了,Session不是一個簡單的時間概念,一個Session中還包括了特定的用戶和服務器。因此更詳細地講,在一個Session定義的全局變量的作用范圍,是指這個Session所對應的用戶所訪問的所有PHP。
例如A用戶通過Session定義了一個全局變量$user=“wind”中,而B用戶通過Session定義的全局變量$user=“jane”。那么在A用戶所訪問的PHP腳本中,$user的值就是wind。
【PHP語言中Session的概念】相關文章:
php語言中session用法07-02
教你如何使用php的session07-13
php實現(xiàn)Session存儲到Redis08-17
PHP解決session死鎖的解決方法09-17
PHP對象Object的概念詳解09-05
C語言中指針的概念03-16
C語言中的幾個重要概念06-17
C語言中的重要概念有哪些08-24
C語言中各種類型的指針的概念總結11-24