首先,給出一些Session的解釋:目前最實用的網絡協議即HTTP超文本傳輸協議,它是“無狀態”的,所謂“無狀態”是指它在用戶與服務器交互時沒有存儲需要交互的“狀態”。而Session 是在網絡應用中的“會話控制”模塊。因此 Session 對象存儲特定用戶會話所需的信息,即之前提到的“狀態”信息。這樣,當用戶在應用程序的 Web 頁之間跳轉時,存儲在 Session 對象中的變量將不會丟失,而是在整個用戶會話中一直存在下去,從而達到用戶與服務器交互的目的。
在這裡我學習的是PHP的Session的使用方法,所以先貼出一段代碼:
1 <?php 2 session_start(); 3 //......code 4 ?>
這裡直接開啟session,調用這個方法,服務器會識別是否已經存在已經在使用的session,如果存在它會直接調用該session;如果不存在,服務器會重新開啟一個session會話,並且為它指定一個唯一的ID。 而一個session的可靠性是否有保證呢?(即在不同的PHP頁面內,我們需要開啟相同的session)答案是肯定的,系統會再一次會話中每次調用“session_start()”方法時使用同一個ID的session。 那麼我再貼出一段代碼:
1 <?php 2 session_id(id); 3 session_start(); 4 //......code 5 ?>
可以看出,這段代碼和上一段的不同是加入了“session_id()”方法的調用。這裡解釋一下:“session_id()”這個方法有兩個作用:
那麼在這裡我們很顯然是通過指定一個id=id的開啟方式來開啟這個session,這樣的好處是session的調用更具穩定性。(不推薦直接這麼做,可以使用cookie來存儲session的id從而達到穩定回話的目的)