亚洲国产日韩欧美一区二区三区,精品亚洲国产成人av在线,国产99视频精品免视看7,99国产精品久久久久久久成人热,欧美日韩亚洲国产综合乱

? php教程 php手冊(cè) 使用無(wú)限生命期Session的方法(轉(zhuǎn))

使用無(wú)限生命期Session的方法(轉(zhuǎn))

Jun 21, 2016 am 09:12 AM
cookie php session

session

使用無(wú)限生命期Session的方法

本文不敢說(shuō)非常好,但是筆者相信大多數(shù)PHPer都曾經(jīng)想過(guò)這些問(wèn)題。

使用無(wú)限生命期Session的方法
在PHP4.0中加入了對(duì)Session的支持,方便了我們很多程序,比如購(gòu)物車(chē)等等!
在很多論壇中,Session也用于處理用戶(hù)的登陸,記錄下用戶(hù)名和密碼,使得用戶(hù)不必每次都輸入自己的用戶(hù)名和密碼!但是一般的Session的生命期有限,如果用戶(hù)關(guān)閉了瀏覽器,就不能保存Session的變量了!那么怎么樣可以實(shí)現(xiàn)Session的永久生命期呢?
大家知道,Session儲(chǔ)存在服務(wù)器端,根據(jù)客戶(hù)端提供的SessionID來(lái)得到這個(gè)用戶(hù)的文件,然后讀取文件,取得變量的值,SessionID可以使用客戶(hù)端的Cookie或者Http1.1協(xié)議的Query_String(就是訪(fǎng)問(wèn)的URL的“?”后面的部分)來(lái)傳送給服務(wù)器,然后服務(wù)器讀取Session的目錄……

要實(shí)現(xiàn)Session的永久生命期,首先需要了解一下php.ini關(guān)于Session的相關(guān)設(shè)置(打開(kāi)php.ini文件,在“[Session]”部分):
1、session.use_cookies:默認(rèn)的值是“1”,代表SessionID使用Cookie來(lái)傳遞,反之就是使用Query_String來(lái)傳遞;
2、session.name:這個(gè)就是SessionID儲(chǔ)存的變量名稱(chēng),可能是Cookie,也可能是Query_String來(lái)傳遞,默認(rèn)值是“PHPSESSID”;
3、session.cookie_lifetime:這個(gè)代表SessionID在客戶(hù)端Cookie儲(chǔ)存的時(shí)間,默認(rèn)是0,代表瀏覽器一關(guān)閉SessionID就作廢……就是因?yàn)檫@個(gè)所以Session不能永久使用!
4、session.gc_maxlifetime:這個(gè)是Session數(shù)據(jù)在服務(wù)器端儲(chǔ)存的時(shí)間,如果超過(guò)這個(gè)時(shí)間,那么Session數(shù)據(jù)就自動(dòng)刪除!
還有很多的設(shè)置,不過(guò)和本文相關(guān)的就是這些了,下面開(kāi)始講使用永久Session的原理和步驟。

前面說(shuō)過(guò),服務(wù)器通過(guò)SessionID來(lái)讀取Session的數(shù)據(jù),但是一般瀏覽器傳送的SessionID在瀏覽器關(guān)閉后就沒(méi)有了,那么我們只需要人為的設(shè)置SessionID并且保存下來(lái),不就可以……
如果你擁有服務(wù)器的操作權(quán)限,那么設(shè)置這個(gè)非常非常的簡(jiǎn)單,只是需要進(jìn)行如下的步驟:
1、把“session.use_cookies”設(shè)置為1,打開(kāi)Cookie儲(chǔ)存SessionID,不過(guò)默認(rèn)就是1,一般不用修改;
2、把“session.cookie_lifetime”改為正無(wú)窮(當(dāng)然沒(méi)有正無(wú)窮的參數(shù),不過(guò)999999999和正無(wú)窮也沒(méi)有什么區(qū)別);
3、把“session.gc_maxlifetime”設(shè)置為和“session.cookie_lifetime”一樣的時(shí)間;
設(shè)置完畢后,打開(kāi)編輯器,輸入如下的代碼:
------------------------------------------------------------------------------------

session_start();
session_register('count');
$count++;
echo $count;
?>
------------------------------------------------------------------------------------
然后保存為“session_check.php”,用瀏覽器打開(kāi)“session_check.php”,看看顯示的是不是“1”,再關(guān)閉瀏覽器,然后再打開(kāi)瀏覽器訪(fǎng)問(wèn)“session_check.php”,如果顯示“2”,那么恭喜了,你已經(jīng)成功;如果失敗的話(huà),請(qǐng)檢查你前面的設(shè)置。

但是如果你沒(méi)有服務(wù)器的操作權(quán)限,那就比較麻煩了,你需要通過(guò)PHP程序改寫(xiě)SessionID來(lái)實(shí)現(xiàn)永久的Session數(shù)據(jù)保存。查查php.net的函數(shù)手冊(cè),可以見(jiàn)到有“session_id”這個(gè)函數(shù):如果沒(méi)有設(shè)置參數(shù),那么將返回當(dāng)前的SessionID,如果設(shè)置了參數(shù),就會(huì)將當(dāng)前的SessionID設(shè)置為給出的值……
只要利用永久性的Cookie加上“session_id”函數(shù),就可以實(shí)現(xiàn)永久Session數(shù)據(jù)保存了!
但是為了方便,我們需要知道服務(wù)器設(shè)置的“session.name”,但是一般用戶(hù)都沒(méi)有權(quán)限查看服務(wù)器的php.ini設(shè)置,不過(guò)PHP提供了一個(gè)非常好的函數(shù)“phpinfo”,利用這個(gè)可以查看幾乎所有的PHP信息!
------------------------------------------------------------------------------------

PHP相關(guān)信息顯示

------------------------------------------------------------------------------------
打開(kāi)編輯器,輸入上面的代碼,然后在瀏覽器中運(yùn)行這個(gè)程序,會(huì)見(jiàn)到PHP的相關(guān)信息(如圖1所示)。其中有一項(xiàng)“session.name”的參數(shù)(圖中已經(jīng)標(biāo)出),這個(gè)就是我們需要的服務(wù)器“session.name”,一般是“PHPSESSID”。
記下了SessionID的名稱(chēng)后,我們就可以實(shí)現(xiàn)永久的Session數(shù)據(jù)儲(chǔ)存了!
打開(kāi)編輯器,輸入下面的代碼:
------------------------------------------------------------------------------------

session_start(); // 啟動(dòng)Session
session_register('count'); // 注冊(cè)Session變量Count
if(isset($PHPSESSID)) {
session_id($PHPSESSID);
} // 如果設(shè)置了$PHPSESSID,就將SessionID賦值為$PHPSESSID,否則生成SessionID
$PHPSESSID = session_id(); // 取得當(dāng)前的SessionID
$count++; // 變量count加1
setcookie('PHPSESSID', $PHPSESSID, time()+3156000); // 儲(chǔ)存SessionID到Cookie中
echo $count; // 顯示Session變量count的值
?>
------------------------------------------------------------------------------------

保存之后,利用和剛才擁有服務(wù)器權(quán)限時(shí)候的檢測(cè)一樣的方法,檢測(cè)是否成功的保存了SessionID。


后記:
其實(shí)真正的永久儲(chǔ)存是不可能的,因?yàn)镃ookie的保存時(shí)間有限,而服務(wù)器的空間也有限……但是對(duì)于一些需要保存時(shí)間比較長(zhǎng)的站點(diǎn),以上方法就已經(jīng)足夠了!關(guān)于Session的其他應(yīng)用,可以參見(jiàn)zphp.com的文章。
最后,筆者的調(diào)試環(huán)境:Windows98DigExt(SE)+Apache+PHP 4.04。?



? ????? ??
? ?? ??? ????? ???? ??? ??????, ???? ?????? ????. ? ???? ?? ???? ?? ??? ?? ????. ???? ??? ???? ???? ??? ?? admin@php.cn?? ?????.

? AI ??

Undresser.AI Undress

Undresser.AI Undress

???? ?? ??? ??? ?? AI ?? ?

AI Clothes Remover

AI Clothes Remover

???? ?? ???? ??? AI ?????.

Video Face Swap

Video Face Swap

??? ??? AI ?? ?? ??? ???? ?? ???? ??? ?? ????!

???

??? ??

???++7.3.1

???++7.3.1

???? ?? ?? ?? ???

SublimeText3 ??? ??

SublimeText3 ??? ??

??? ??, ???? ?? ????.

???? 13.0.1 ???

???? 13.0.1 ???

??? PHP ?? ?? ??

???? CS6

???? CS6

??? ? ?? ??

SublimeText3 Mac ??

SublimeText3 Mac ??

? ??? ?? ?? ?????(SublimeText3)

???

??? ??

??? ????
1597
29
PHP ????
1488
72
???
PHP? ???? ?? ?? ??? ???? ?? PHP ?? ????? ?? ?? PHP? ???? ?? ?? ??? ???? ?? PHP ?? ????? ?? ?? Jul 25, 2025 pm 08:51 PM

PHP?? ?? ?? ??? ???? ?? ??? ? ???? ?? ??? ???? ?? ??? ???? ???? ????. 1. ?? ?? ??? ?? ??? URL ? ?? ??? ????. 2. UrlenCode? ???? ?? ??? ???????. 3. ? ???? ????? ?? ?? ??? ? ?? ??? ?????. 4. ???? ???? ?? ? ? ??? ??? ??? ??? ?????. 5. ??? ?? ??? ????? ?? ????? OG ??? ???? ?????. 6. XSS ??? ???? ?? ??? ??? ?????. ? ???? ??? ??? ???? ??? ?? ?? ??? ??? ???? ??? ?? ??? ?????.

PHP? AI ??? ?? ?? PHP ?? ?? ?? ??? ??? ?????. PHP? AI ??? ?? ?? PHP ?? ?? ?? ??? ??? ?????. Jul 25, 2025 pm 08:45 PM

??? ?? ??? ??? ?? JavaScript? MediareCorder API? ?? PHP ???? ???? ?????. 2. PHP? ???? ?? ??? ???? STTAPI (? : Google ?? Baidu ?? ??)? ???? ???? ?????. 3. PHP? ???? AI ??? (? : OpenAigpt)? ????. 4. ?? ?? PHP? TTSAPI (? : Baidu ?? Google ?? ??)? ???? ??? ?? ??? ?????. 5. PHP? ?? ??? ??? ??? ??? ?? ?? ??? ?????. ?? ????? PHP? ?? ???? ?? ?? ?? ??? ??? ?????.

PHP? ???? AI? ???? ??? ?? ?? PHP ?? ?? ? ???? ?????. PHP? ???? AI? ???? ??? ?? ?? PHP ?? ?? ? ???? ?????. Jul 25, 2025 pm 08:57 PM

AI? ??? ??? ?? ?? ? ?? ???? ????? ?? ??? ??????. 1. Baidu, Tencent API ?? ?? ?? NLP ?????? ?? ??? AI ?? ?? API? ??????. 2. PHP? ? ?? guzzle? ?? API? ???? ?? ??? ??????. 3. ?? ????? ?? ?? ??? ???? ???? ???? ??? ??? ? ????. 4. ?? ?? ? ?? ???? ?? PHP-L ? PHP_CODESNIFFER? ??????. 5. ???? ????? ???? ?? ?? ??? ?????? ??? ??????. AIAPI? ??? ? ???, ?? ??, ?? ? PHP ?? ??? ??? ???. ?? ???? PSR ??? ???, ??? ????? ????, ?? ??? ???, ????? ??? ????, X? ???????.

PHP? PHP ?? ?? ? ?? ??? ??? ?????? ??? ??? ???? ????. PHP? PHP ?? ?? ? ?? ??? ??? ?????? ??? ??? ???? ????. Jul 25, 2025 pm 08:27 PM

1. ?? ???? ??? ??? ?????? ?? ?? ??? ??, ??? ?? ???? ??? (? : ?? ???, ? ? ??), ?? ??? ?? ???? ???? ? ?? ?? ??? ??? ?? ??? ????????. 2. ?? ??? ??? ?? ? ??? ???? ?? ?? ?? ???? ?? ? ?? AUDIT ?? ??? ??? ? ????? ????? ??? ???????. 3. ?? ?? ??? ?? ??? ???????. Recaptchav3 ???? ??, ??? ?? ?? ?? ?? ??, IP ? ?? ??? ??? ??? ?? ???? ??? ?? ??? ????? ??? ???? ????? ??? ?????.

PHP? ?? ?? ?? ? ?? ?? PHP ?? ??? ? ?? ????? ?? PHP? ?? ?? ?? ? ?? ?? PHP ?? ??? ? ?? ????? ?? Jul 25, 2025 pm 08:30 PM

PHP? ?????? ????? ?? ?? ?? ???? ???? ?? ???? ???? ?? ?? ???? ?????. 2. ?? ??? ???? ???? ?? ??? ?? ? ??? ??? ???? ?? API/Webhook ??? ??? ?? ???? ??? ??? ??? ??? ?????. 3. ?? ????? ?? ??, ??/???? ????, ???? ??, ???? ? ??? ?????? ????? ?? ??? ???? ???? ?? Dingtalk, SMS ?? ??? ???? ??? ?????? ???? ?? ? ??? ??? ????? ?? ??? ???? ???????.

PHP? ???? AI? ???? ???? ???? ??. PHP? ???? ?? ??? ????? PHP? ???? AI? ???? ???? ???? ??. PHP? ???? ?? ??? ????? Jul 25, 2025 pm 07:21 PM

PHP? AI ??? ??? ?? ????? ??? API? ?? ?????. ??? ??? ????? ? ??? ???? ?????. API ??? ?? ?? ??? ???? ??? ??? ???? ???? ? ????. 2. ?? ?? ???? guzzle ?? curl? ???? HTTP ??? ???, JSON ??? ??? ? ???, API ? ?? ??, ??? ? ?? ??? ???? ??, ??? ?? ?? ? ? ?? ????, ??? ?? ? ?????? ?????. 3. ???? ???? ?? ???? API ??, ?? ? ??? ?? ??, ??? ?? ??, ?? ?? ? ??? ??? ??? ?????. ?? ??? ??? ??? ? ??? ???? Propt ?? ? ?? ?? ??, ??? ?? ? ?? ????, ?? ?? ?? ???? ? ??? ?? ? ???? ????? ?????.

?? ?? ?? : ?? ?? ?????? PHP? ?? ?? ?? ?? : ?? ?? ?????? PHP? ?? Jul 27, 2025 am 04:31 AM

PhpisstillRelevantinmodernenterpriseenvironments.1. Modernphp (7.xand8.x)? ??? ??, ??? ??, jitcompilation ? modernsyntax, mateitsuilableforlarge-scalepplications

PHP ?? AI ?? ?? ? ??? PHP ?? ??? ?? ?? ??? PHP ?? AI ?? ?? ? ??? PHP ?? ??? ?? ?? ??? Jul 25, 2025 pm 07:06 PM

??? AI ?? ?? ???? ???? PHPSDK? ??????. 2. PHP? ???? FFMPEG? ???? ???? API ?? ?? (? : WAV)?? ?????. 3. ??? ???? ????? ????? API ???? ??? ??????. 4. NLP ??? ???? JSON ??? ???? ???? ?????. 5. ?? ??? ???? ???? ?? ?? ?? ?? ?? ??? ?????. ?? ????? ?? ?? ? ??? ???? ?? ??? ???, ??? ?? ? ??? ???????.

See all articles