當前位置:首頁 » 編程語言 » cookie作用域php

cookie作用域php

發布時間: 2023-01-31 10:29:05

① 大家好,請問php中什麼時候用$_SESSION $_COOKIE 謝謝了

$_SESSION是臨時會話變數,用來儲存訪問者信息。內容是儲存在伺服器上面的。
比如 $_SESSION["ABC"] = "aaa";
那麼這個用戶訪問時,$_SESSION["ABC"]的值就是aaa。但是僅限於臨時會話。也就是當用戶離開網頁之後,再進行訪問時,就無法取得$_SESSION。
可以這樣理解,$_SESSION就是伺服器將用戶訪問的一些信息儲存起來,然後當下次訪問時找出來。但是當用戶訪問信息出現更改之後,伺服器就認不出來了。
$_COOKIE和$_SESSION很像,但它是在用戶端儲存的,儲存在瀏覽器上。用戶可以儲存$_COOKIE。PHP上setcookie()函數可以儲存cookie值,設置作用域和過期時間。
這樣的話,即使是用戶離開訪問的網站,只要cookie沒有過期,下次一樣可以取得$_COOKIE值。
也就是說$_COOKIE是瀏覽器來識別伺服器,當找到指定的伺服器,便提供相應的cookie值。

好了,既然session和cookie的基本作用搞清楚了。什麼時候用也就很明白了。
當需要給指定的用戶提供臨時信息的時候,這兩個變數就派上用場。比如用戶的登錄. 儲存用戶的設置等等..
一般都是將session和cookie搭配使用。(相比之下,cookie是用戶決定的,穩定性和安全性不如session,但它可以長期儲存,所以可以用它指向session)
關於更多的用法可以搜索php session的相關知識

② php cookie怎麼作用域二級域中

PHP 代碼
setcookie( "TestCookie", "okol", time() + 3600, "/", ".zhanglirong.cn"); //設置域名為.zhanglirong.cn
這時候就可以跨二級域名了

③ PHP 設置跨域 域名cookie

理論上php不可以跨域設置cookie;
php設置cookie流程:返回的信息攜帶信息,然後靠瀏覽器來執行寫入到cookie,一般瀏覽器安全機制已經限制跨域寫入;
如果你想偽造cookie,可以使用瀏覽器管理cookie的插件

④ PHP即時cookie有效期時間怎麼設置

設置方法如下:
setcookie("cookie_name", "abcd", time()+3600);
解釋:這個cookie有3600秒的有效期;
cookie有效期在退出作用域那一刻開始生效;
重新又有3600秒,設置cookie時,不會考慮之前的是否設置cookie和cookie是否有效,可以認為是強制設置。
如果關閉瀏覽器重新打開又重新算(當然這個要php.ini設置了關閉瀏覽器立即失效的開關),其實就是打開頁面產生cokeie開始算起,如果你打開頁面產生cokeie的時間有1800秒了,假如設置的3600秒失效,再次刷新頁面就剩1800秒了

⑤ thinkphp cookie 只在本頁有效,相同域下的其他頁面就調用無效了,我也加了時間

如果你使用的是pathinfo模式的話,那是因為cookie有作用路徑的,默認為/,而這個符號正好是pathinfo模式的分隔符,所以cookie就被限制在當前頁了
辦法是你加上cookie作用域就可以,如.xxx.com

⑥ cookie作用域的設置

第一點,要設置Response.Cookies(CookieName).Domain = "abc.com" ,這樣就可以進行本域操作了
第二點,cookies是無法進行跨域操作的,因為這樣安全性會大大降低,所以不用去考慮了
第三點,按程序代碼來說,應該是沒問題的,你可以測試下能不能取到cookies。

⑦ php 關於 cookie 作用域 與 修改cookie值

cookie的值無論到了哪個目錄都是一樣的
比如在 目錄a里 $_COOKIE['test'] = "test_value" 這樣傳了值
到了目錄b里輸出 echo $_COOKIE['test'] 結果顯示是 test_value
完了再目錄b里給cookie重新賦值(也就是修改了值) $_COOKIE['test'] = "change_value"
到了目錄a輸出的話就是從新賦值的值了也就是 change_value
cookie是在電腦里保存著的文檔不是php里的所以你在哪個頁面只要cookie沒刪除輸出的話值都是一樣的
但願給你有所幫助

⑧ ThinkPHP5設置Cookie有何講究

Cookie::set()
在設置cookie 的時候它的值是經過序列化+base64_encode加密存儲
cookie()則是直接寫入cookie的

在做Thinkphp和UC同步的時候,剛開始應用登陸同步UC是很正常的,但是反過來的時候卻出現了uc.php不能寫入cookie的情況。後來發現原來是作用域在作怪。

setcookie('uid', base64_encode(serialize($uid)), time() + 3600, '/');

base64_encode(serialize($uid))這么寫的原因是我網站獲取cookie的時候用的是Cookie::get("uid");

熱點內容
國產安卓哪個系統最好 發布:2024-02-23 13:59:03 瀏覽:535
我們家裡的網路密碼是多少 發布:2024-02-23 13:50:24 瀏覽:902
it培訓java 發布:2024-02-23 13:49:43 瀏覽:997
編程布置 發布:2024-02-23 13:18:36 瀏覽:477
浪潮伺服器怎麼開機 發布:2024-02-23 12:33:37 瀏覽:662
聯想更新配置在哪個文件里 發布:2024-02-23 12:28:32 瀏覽:846
編譯原理文法類型判斷實驗心得 發布:2024-02-23 12:26:50 瀏覽:564
安卓系統為什麼沒有讀屏功能 發布:2024-02-23 12:15:14 瀏覽:755
oracle資料庫查看字元集 發布:2024-02-23 12:15:12 瀏覽:743
蘋果筆記本鏈接ftp怎麼用 發布:2024-02-23 12:15:12 瀏覽:378