會話控制

1.setcookie


2.header?(?string?$string?[,?bool?$replace?= true?[,?int?$http_response_code?]] ) 通常只用到第一個參數(shù)string

header("Set-Cookie:name=value;[expires=date;][path=path;][security;][httponly;]");

比如header("Set-Cookie:cookie=cookietest;expires=".(time()+10).";path='/';security;");

注意字符串的拼接酪耕。比如"abcd=".function()."efgh"

3.數(shù)組定義現(xiàn)在常用

$test=[

? ? ? ? "1"=>"asda",

? ? ? ? "2"=>"asdsadas",

? ? ? ? "3"=>"qwewqe"

];

4.session??默認(rèn)session_id及對應(yīng)數(shù)據(jù)通過cookie存儲N椿摹Q嵯巍劲够!

(1)會話:服務(wù)器和瀏覽器保有的共同小秘密的這段時間


準(zhǔn)備建立會話的時候,服務(wù)器會分析瀏覽器的請求拳昌,看里面是否有session_id,若沒有磕仅,則創(chuàng)建一個并賦值,然后傳給瀏覽器吭练,一般會被瀏覽器保存在cookie中。之后瀏覽器再去訪問服務(wù)器時析显,會攜帶session_id鲫咽,服務(wù)器就可以認(rèn)識瀏覽器了。

服務(wù)器會為每個session_id創(chuàng)建session文件谷异,存放一些會話數(shù)據(jù).每次瀏覽器訪問服務(wù)器都會根據(jù)session_id認(rèn)領(lǐng)自己的信息分尸。

2)開啟會話 session_start();

(3)讀取和設(shè)置會話數(shù)據(jù)? $_SESSION全局變量(是個數(shù)組)

<?php

session_start();

if(isset($_SESSION['views'])){????$_SESSION['views']=$_SESSION['views']+1;}

else{????$_SESSION['views']=1;}

echo "瀏覽量:". $_SESSION['views'];?>? //每刷新一次,瀏覽量+1 views不是session_name,session_name默認(rèn)是PHPSESSID,在php.ini中配置

(4)銷毀 Session

如果您希望刪除某些 session 數(shù)據(jù)歹嘹,可以使用 unset() 或 session_destroy() 函數(shù)箩绍。

unset() 函數(shù)用于釋放指定的 session 變量:

<?php

session_start();if(isset($_SESSION['views'])){????unset($_SESSION['views']);}?>

您也可以通過調(diào)用 session_destroy() 函數(shù)徹底銷毀 session:

<?php

session_destroy();?>

注釋:session_destroy() 將重置 session,您將失去所有已存儲的 session 數(shù)據(jù)尺上。

(5)用setcookie()來設(shè)置session的過期時間

setcookie(session_name(),session_id(),time()+3600); //session_id()返回所有session的id,而session_name都相同材蛛。name與id相同,過期時間不同怎抛,則就是不同的session卑吭。如圖


(6)session的會話配置選項

php.ini關(guān)于Session的相關(guān)設(shè)置(打開php.ini文件,在“[Session]”部分):?

1抽诉、session.use_cookies:默認(rèn)的值是“1”陨簇,代表SessionID使用Cookie來傳遞吐绵,反之就是使用Query_String來傳遞迹淌;?

2、session.name:這個就是SessionID儲存的變量名稱己单,可能是Cookie唉窃,也可能是Query_String來傳遞,默認(rèn)值是“PHPSESSID”纹笼;?

3纹份、session.cookie_lifetime:這個代表SessionID在客戶端Cookie儲存的時間,默認(rèn)是0廷痘,代表瀏覽器一關(guān)閉SessionID就作廢……就是因為這個所以Session不能永久使用蔓涧!?

4、session.gc_maxlifetime:這個是Session數(shù)據(jù)在服務(wù)器端儲存的時間笋额,如果超過這個時間元暴,那么Session數(shù)據(jù)就自動刪除!?

(7)當(dāng)cookie被禁用 怎么使用session兄猩?傳遞session_id(url中的? 作用與$_GET---參數(shù)傳遞)?

什么是$_GET

通過 URL 參數(shù)傳遞給當(dāng)前腳本的變量的數(shù)組茉盏。






課程上的例子按下圖所示寫法鉴未,這個超鏈接寫法有難度,注意賦值給href的是一大串字符串鸠姨,會跳轉(zhuǎn)到dump1.php頁面铜秆,該頁面的URL有用 ?連接的參數(shù)讶迁,即sessionid與sessionname


在某一php頁面寫的连茧。然后點擊該頁面的超鏈接


跳轉(zhuǎn)到dump1.php. 查看URL.注意?后的參數(shù)



要在dump1.php中獲取URL的參數(shù)巍糯,必須用$_GET全局變量梅屉。圖中session_id()函數(shù)用于設(shè)置該session_name對應(yīng)的id。



8.會話銷毀


9.自定義會話處理器 鳞贷,坯汤,可以自定義會話存儲函數(shù)來將會話數(shù)據(jù)存儲到數(shù)據(jù)庫。shuhttps://www.imooc.com/video/15867

SessionHandlerInterface?{

/* 方法 */

abstract?public?close?(?void?) :?bool

abstract?public?destroy?(?string?$session_id?) :?bool

abstract?public?gc?(?int?$maxlifetime?) :?int

abstract?public?open?(?string?$save_path?,?string?$session_name?) :?bool

abstract?public?read?(?string?$session_id?) :?string

abstract?public?write?(?string?$session_id?,?string?$session_data?) :?bool

}


session_set_save_handler?(?callable?$open?,?callable?$close?,?callable?$read?,?callable?$write?,?callable?$destroy?,?callable?$gc?[,?callable?$create_sid?[,?callable?$validate_sid?[,?callable?$update_timestamp?]]] ) :?bool

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末搀愧,一起剝皮案震驚了整個濱河市惰聂,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌咱筛,老刑警劉巖搓幌,帶你破解...
    沈念sama閱讀 219,270評論 6 508
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異迅箩,居然都是意外死亡溉愁,警方通過查閱死者的電腦和手機,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,489評論 3 395
  • 文/潘曉璐 我一進店門饲趋,熙熙樓的掌柜王于貴愁眉苦臉地迎上來拐揭,“玉大人,你說我怎么就攤上這事奕塑√梦郏” “怎么了?”我有些...
    開封第一講書人閱讀 165,630評論 0 356
  • 文/不壞的土叔 我叫張陵龄砰,是天一觀的道長盟猖。 經(jīng)常有香客問我,道長换棚,這世上最難降的妖魔是什么式镐? 我笑而不...
    開封第一講書人閱讀 58,906評論 1 295
  • 正文 為了忘掉前任,我火速辦了婚禮固蚤,結(jié)果婚禮上娘汞,老公的妹妹穿的比我還像新娘。我一直安慰自己颇蜡,他們只是感情好价说,可當(dāng)我...
    茶點故事閱讀 67,928評論 6 392
  • 文/花漫 我一把揭開白布辆亏。 她就那樣靜靜地躺著,像睡著了一般鳖目。 火紅的嫁衣襯著肌膚如雪扮叨。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 51,718評論 1 305
  • 那天领迈,我揣著相機與錄音彻磁,去河邊找鬼。 笑死狸捅,一個胖子當(dāng)著我的面吹牛衷蜓,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播尘喝,決...
    沈念sama閱讀 40,442評論 3 420
  • 文/蒼蘭香墨 我猛地睜開眼磁浇,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了朽褪?” 一聲冷哼從身側(cè)響起置吓,我...
    開封第一講書人閱讀 39,345評論 0 276
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎缔赠,沒想到半個月后衍锚,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 45,802評論 1 317
  • 正文 獨居荒郊野嶺守林人離奇死亡嗤堰,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 37,984評論 3 337
  • 正文 我和宋清朗相戀三年戴质,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片踢匣。...
    茶點故事閱讀 40,117評論 1 351
  • 序言:一個原本活蹦亂跳的男人離奇死亡告匠,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出符糊,到底是詐尸還是另有隱情凫海,我是刑警寧澤呛凶,帶...
    沈念sama閱讀 35,810評論 5 346
  • 正文 年R本政府宣布男娄,位于F島的核電站,受9級特大地震影響漾稀,放射性物質(zhì)發(fā)生泄漏模闲。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點故事閱讀 41,462評論 3 331
  • 文/蒙蒙 一崭捍、第九天 我趴在偏房一處隱蔽的房頂上張望尸折。 院中可真熱鬧,春花似錦殷蛇、人聲如沸实夹。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,011評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽亮航。三九已至荸实,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間缴淋,已是汗流浹背准给。 一陣腳步聲響...
    開封第一講書人閱讀 33,139評論 1 272
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留重抖,地道東北人露氮。 一個月前我還...
    沈念sama閱讀 48,377評論 3 373
  • 正文 我出身青樓,卻偏偏與公主長得像钟沛,于是被迫代替她去往敵國和親畔规。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 45,060評論 2 355

推薦閱讀更多精彩內(nèi)容