PHP $_COOKIE、$_SESSION、$_REQUEST的區別

2020-07-16 10:05:13
在 PHP 中,cookie 就是伺服器,它是留在用戶端(瀏覽器)上的一個小的資料檔案,通常用於標識使用者資訊,也稱為瀏覽器快取或 Cookies。

$_COOKIE[] 全域性陣列儲存了通過 HTTP COOKIE 傳遞到指令碼的資訊,PHP 可通過 setcookie() 函數設定 COOKIE 的值,用 $_COOKIE[] 陣列接收 COOKIE 的值,$_COOKIE[] 陣列的索引為 COOKIE 的名稱。

session 是一種客戶與網站(伺服器)更為安全的對話方式,一旦開啟了 session 對談,便可以在網站的任何頁面使用(保持)這個對談,從而讓存取者與網站之間建立了一種“對話”機制。但是 session 不同於 cookie,必須先啟動,才能生效。

$_SESSION[] 陣列用於獲取對談變數的相關資訊。

$_REQUEST 支援 $_GET 和 $_POST 傳送過來的請求,即 get 和 post 它都可以接受,瀏覽器位址列中的資料顯示不顯示要看傳遞的方法,get 會顯示在 url 中(有字元限制),post 不會顯示在 url 中,可以傳遞任意多的資料(只要伺服器支援)。

預設情況下,$_REQUEST[] 陣列包含了 $_GET、$_POST 和 $_COOKIE 的陣列。