2015-04-01 79 views
2

PHP如何查看客戶端cookie?PHP如何查看客戶端cookie?

詳細說明: 使用PHP & Javascript時,我知道PHP在服務器端得到處理。而Javascript發生在客戶端。

在Javascript中,我可以檢查並設置這些客戶端Cookie。這就說得通了。然而,在PHP中,如果我檢查客戶端cookie值作爲也設置的條件語句的一部分,PHP如何在服務器端發生PHP時能夠看到客戶端cookie值?

這裏的PHP條件,生活在一個PHP文件的例子:

<?PHP 
if ($_COOKIE["name"] == 「Mickey」) { 
    setcookie(「fulsome」, 「Mickey Mouse」, time()+3600); 
} 
?> 
+5

每個請求標頭中都包含有Cookie – cmorrissey 2015-04-01 16:12:04

+1

當瀏覽器向服務器發送請求時,它也發送帶有請求的cookies讀取HTTP教程以獲得更多理解 – siddhesh 2015-04-01 16:12:08

+1

您有捲曲引號''''和'「」' - 是您的實際報價,您的代碼將失敗並導致500錯誤。 – 2015-04-01 16:12:17

回答

0

(根據意見,我想離開一個完整的答案,因爲我理解它)。

HTTP標頭包含域/站點的現有Cookie。

當PHP檢查一個cookie時,cookie &它的值是通過調用PHP文件中發送的HTTP Header獲得的。

當PHP設置一個cookie時,它將與HTTP頭一起發送回客戶端,然後在客戶端進行設置。

對於什麼是標頭中發送的完整列表,並回響應報頭,看到這一點: http://en.wikipedia.org/wiki/List_of_HTTP_header_fields

你會看到的Cookie在頭字段列表,設置Cookie中的列表響應字段。

2

沒有客戶端cookie這樣的東西。

Cookie是與瀏覽器中的一組URL相關聯的一段數據。每次瀏覽器向其中一個URL發送HTTP請求時,Cookie都會包含在請求標頭中。

它們最初設計爲通過HTTP響應頭進行設置。

一個API被添加到瀏覽器,允許它們由JavaScript創建和設置。雖然這些cookie仍然是常規cookie,並且會包含在對相關URL的每個請求中。

有可能將cookie標記爲http_only,這會導致瀏覽器阻止從JavaScript訪問該cookie。以相反的方式強加類似的限制並沒有直接的等價物。最接近的可能是使用本地存儲而不是Cookie。