爲什麼設置上了cookie,但第一次請求的時候拿不到?(最簡解釋 + 圖、文、碼三維解析)

一、答案 

1、cookie是設置在客戶端的,setcookie函數自己並不能設置cookie,它只能通過頭信息的方式告訴瀏覽器說:我想要設置一個 cookie,鍵爲a,值爲value,你在你那裏幫我設置一下

2、編程語言的執行是自上而下的,當次執行的時候cookie文件中並沒有,請求之初也沒有攜帶需要的存的信息,所以拿不到

3、當第二次請求的時候,由於服務器讓瀏覽器存入了cookie文件,在瀏覽器的請求頭信息中已經有了,具體可以參照下圖

二、代碼

<?php
    function test() {
        setcookie('user_cookie', 123, time()+3600, '/');
        var_dump($_COOKIE['user_cookie']);exit;
    }

三、圖文說明:

3.1  第一次請求爲空的情景

3.2 第二次請求的情景

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章