1. 程式人生 > >PHP——會話跟蹤

PHP——會話跟蹤

一、關於會話

        會話跟蹤是Web程式中常用的技術,用來跟蹤使用者的整個會話。

        常用的會話跟蹤技術是:cookie和session

二、session與cookie的差別

        1、cookie:通過在客戶端記錄資訊確定使用者身份

              session:通過在伺服器端記錄資訊確定使用者身份

        2、cookie 不是很安全,別人可以分析存放在本地的COOKIE並進行COOKIE欺騙考慮到安全應該使用session

        3、session會在一定時間內儲存在伺服器上。當訪問增多,會比較佔用你伺服器的效能,考慮到減輕伺服器效能方面,應當                 使用cookie

       4、單個cookie儲存的資料不能超過4k,很多瀏覽器都限制一個站點最多儲存20個cookie

三、關於session(可實現頁面之間數共享)

       1、啟動會話

            session_start()

       2、存入會話

           $-SESSION['key'] = $value

      3、讀取會話

           $value=$_SESSION['key']

      4、刪除會話

           unset($_SESSION['key']) 或

           $_SESSION=array()

     5、結束當前會話

           session_destroy()

     6.session的垃圾回收

        session.gc_probablity = 1 清理次數

        session.gc_divisor = 100 session開啟次數

        session.gc_maxlifetime = 1440 過期時間

      即每100次開啟session, 就有1次, 會清理掉最後修改時間至今超過1440s的session檔案

    7、session是基於session id的查詢方式

四、關於cookie

     1、建立cookie

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

     2、讀取cookie

          $_COOKIE[key]

    3、刪除cookie

          Setcookie(key,value,trime()-1)

  注意:web應用程式是使用HTTP協議傳輸資料的;

              HTTP協議是無狀態的協議。一旦資料交換完畢,客戶端與伺服器端的連線就會關閉,再次交換資料需要建立新的連線。                這意味著伺服器無法從連線上跟蹤會話