PHP設(shè)置COOKIE保留時間為瀏覽器進(jìn)程
例如:
以下為引用的內(nèi)容:<?php$USERID='PHPer';$CookieTime=0;setcookie('USERID', '$USERID', time()+$CookieTime,'/','pcpchina.com');?>
你會發(fā)現(xiàn)這個語句執(zhí)行過后,Cookie里什么也沒有,到下一個頁面就顯示沒有$USERID這個COOKIE變量值。問題分析如下:
首先,設(shè)置瀏覽器進(jìn)程的“Cookie 過期的時間”這個值并不是當(dāng)前Unix時間戳+0,如果設(shè)置為瀏覽器進(jìn)程的話,直接將過期時間設(shè)置為0即可。其次,不清楚你測試這個頁面時候使用的域名是什么,如果你設(shè)置了“pcpchina.com”的話,就說明你必須使用“pcpchina.com”進(jìn)行訪問cookie才會有效,其實如果 你的域名很多訪問這個頁面的話,那么這個地方可以為空或者訪問這個cookie的域名都是一個域下面的,那么就設(shè)置為“.pcpchina.com”,記得前面有“點”
上面的程序如果你這樣寫的話,可能會有效:
以下為引用的內(nèi)容:<?php$USERID='PHPer';$CookieTime=0;setcookie('USERID','$USERID',0,'/','');echo(isset($_COOKIE['USERID'])?$_COOKIE['USERID']:'');?>
第一次打開這個頁面時候是不會有任何輸出的,因為cookie并不會在當(dāng)前頁面即刻生效。刷新以后會顯示的。
