天天躁日日躁狠狠躁AV麻豆-天天躁人人躁人人躁狂躁-天天澡夜夜澡人人澡-天天影视香色欲综合网-国产成人女人在线视频观看-国产成人女人视频在线观看

PHP 之Section與Cookie使用總結

SESSION與COOKIE區別:

  Session 將信息保存在服務器上.服務器在接受到唯一的SESSION_ID后,根據這個ID獲取相關數據,然后將信息傳遞到客戶端(瀏覽器).
  Cookie 是將所有信息以文本的形式存在本地文件,并由客戶端(瀏覽器)進行管理與維護.
因為Session 數據存儲在server端,所以遠程client無法對數據進行修改;而Cookie存儲在client本地,容易被獲取和篡改.所以Session安全性較高.

SESSION 介紹:

  php5 后session被設置為全局變量,可以通過 $_SESSION[session_id] 來獲取.當頁面啟動SESSION會話,會在服務器中生成一個帶唯一id的SESSION,這個SESSION在生命周期結束前一直有效.當關閉網頁或結束生命周期后,session會在服務器中自動注銷.

創建一個session 會話需要經過一下4個步驟:

  a)啟動會話..
    方法有2種: bool session_star(); boolean session_register(string name);
  b)注冊回話.
    會話變量被啟動后,全部保全在$_SESSION數組當中.通過數組$_SESSION創建一個會話變量很簡單,只需要給該數組添加一個變量即可.
  c)使用會話:
    一般操作:判斷對應session_id的SESSION是否存在.不存在創建一個,存在 則通過 $_SESSION[session_id] 使用.
  d)刪除會話.
unset($_SESSION[session_id]);//刪除單個.
    unset([$_SESSION]);//刪除整個,將禁止整個會話功能,切無法恢復.
   $__SESSION=array();//刪除整個,可恢復.
   session_destroy();//結束當前會話..

SESSION的生命周期:

  1.控制session 生命周期的方法:
   一. 前提條件:客戶端支持COOKIE!
    方法:
      a>通過Session來完成.
         void session_set_cookie_params(int lifetime[,string path][,string domain][,bool secure]);
         bool setcookie(string name [,string value] [,int expire] [,string path] [,sting domain] [,secure]);
      b>通過Cookie 來完成.
二. 前提條件:客戶端不支持COOKIE!
     一旦客戶端不支持cookie,SESSION就不能在頁面間傳遞,解決辦法:
     a>.在登陸前提示用戶打開cookie.
     b>.表單POST/GET方式,來傳遞SESSION_ID.

     c>.設置php.ini文件中的session.use_trans_sid=1 或編譯時打開-enable-trans-sid;
     d>.通過文件或數據庫方式傳遞SESSION_ID;

服務器上對SESSION性能優化:
  在服務器中,如果將所有用戶的session都保存到臨時目錄中,會降低服務器的安全性與效率.
  解決方法:將SESSION存儲服務器上的數據庫或者臨時文件中.
  臨時文件:
    string session_save_path(string path);
  數據庫:
    session 存儲在臨時文件時,當網站瀏覽量很大的時候,將會導致查詢Session的效率很低,推薦數據庫存儲形式.
    bool session_set_save_handler(string open,string close,string read,string write,string destroy,string gc);//將session_id 存儲與數據庫中的函數.

SESSION 緩存:

  緩存即將頁面中的某些信息存儲到客戶端指定的文件夾中,且可以設置一定的有效時間.(已經經過第一次訪問,且存儲)在這個有效時間內,當再次訪問頁面,則可直接從緩存中讀取內容,從而提高頁面瀏覽效率.

  string session_cache_limiter(string cache_limiter); //緩存函數.
  int session_cache_expire([int new cache_expire]); //有效時間.

COOKIE介紹:

  cookie 是一種遠程客戶端存儲數據和跟蹤識別用戶的機制.是服務器臨時存放數據在本地用戶的一個文本文件.文本文件格式:"用戶名@網站地址[數字].txt"

COOKIE 常見功能:

  a)記錄訪客的某些信息. b)在頁面間傳遞變量; c)將頁面內容存儲到cookie中提高下次訪問速度.
慎用COOKIE:
  a)不是所有的瀏覽器都支持cookie.
  b)數據是以明文的方式保存在本地,不適合敏感的信息,未加密的信息.
  c)不同類型瀏覽器對cookie 文件有大小,個數限制:比如最多只能存300個cookie 文件,每個大小不超過4KB,每個域名最多支持20個cookie文件.如果超過顯示,會隨機刪除.
創建COOKIE:
  bool setcookie(string name [,string value] [,int expire] [,string path] [,sting domain] [,secure]);
讀取COOKIE:
  $_COOKIE[];
刪除COOKIE:
  a). setcookie("id", "",time()-1);//值為空,有效時間小于當前時間.0為直接刪除COOKIE.
  b).手動刪除.在客戶端找到臨時存放cookie的文件.

setcookie()函數后,要執行刷新,cookie才能取得數據:
  個人理解是因為session 跟cookie都是在client 跟server之間傳輸,在頁面顯示前,我們就必須獲取到相應的數據.所以一般是在獲取 http:// 或https://時必須帶上session 或cookie..當在執行setcookie()時,僅僅在本地存儲了cookie 但是地址上并沒有帶上cookie..因而需要刷新,讓服務器給地址協議帶上cookie發送個客戶端,這樣才能取得到值..

  正是以上session_star(),setcookie()前,html頁面不能有輸出...所以說cookie 或者session認第一,就沒人敢認第二.

php技術PHP 之Section與Cookie使用總結,轉載需保留來源!

鄭重聲明:本文版權歸原作者所有,轉載文章僅為傳播更多信息之目的,如作者信息標記有誤,請第一時間聯系我們修改或刪除,多謝。

主站蜘蛛池模板: 国产精品96久久久久久AV不卡 | 国产 交换 丝雨 巅峰 | 欧美一区二区日韩一区二区 | 青青青青青青草 | 99久久久无码国产精品不卡按摩 | 国产AV国产精品国产三级在线L | 久久99精品国产99久久6男男 | 亚洲日韩精品AV中文字幕 | 超嫩校花被灌醉在线观看 | 亚洲精品电影久久久影院 | 好男人好资源在线观看 | 午夜一区欧美二区高清三区 | 啪啪啪社区| 胸太大被男同桌吃好爽 | 糙汉顶弄抽插HHHH | 蜜柚影院在线观看免费高清中文 | 人驴交f ee欧美 | 99热婷婷国产精品综合 | 抽插的日日液液H | 亚洲成熟人网站 | 免费视频网站嗯啊轻点 | 91极品蜜桃臀在线播放 | 好大好爽好深舒服死了 | 久久天堂视频 | 美女被爽cao免费漫画 | 日本大片免a费观看视频 | 美女被撕开胸罩狂揉大乳 | 6080yy奇领电影在线看 | 久久视频精品38线视频在线观看 | 亚洲宅男天堂a在线 | 蜜桃精品成人影片 | bl肉yin荡受np各种play | 亚洲 欧美 国产 在线 日韩 | 97人妻在线公开视频在线观看 | 操他射他影院 | 毛片一区二区三区 | 日韩插啊免费视频在线观看 | 久久国产免费观看精品1 | 国产精品久久久久精品A片软件 | 欧美最猛黑人XXXXWWW | 国产高清视频在线播放www色 |