2012-11-10 110 views
1

我有這樣的代碼:輸出「頭」功能

<?php 
header('Location: http://www.example.com/'); 
echo 'Hello'; 

,我不知道會是什麼代碼的結果。我知道 - 瀏覽器獲取標題&重定向到「http://www.example.com/」。 但'頭'功能後輸出呢?哪裏會發送字符串「Hello」? 如果broser會收到它?

回答

3

header()被用來發送一個原始HTTP標頭

它將發出在其報頭中的重定向(不同的HTTP代碼,REDIRECT 302),與內容'Hello'沿。

在轉到任何內容之前,響應標頭首先由網絡瀏覽器處理。 因此,這種HTTP響應的內容將不會被瀏覽器讀取或處理。

更多:HTTP 302

+2

雖然響應體將不會被讀取或通過瀏覽器進行處理,它仍然_is_發送,這會佔用不必要的帶寬,可能存在安全隱患(想象未經授權的用戶重定向在敏感內容的管理頁面上)。總是在這樣的重定向之後立即退出。 – FtDRbwLXw6

+0

要添加到drrcknlsn的評論:完全取決於用戶代理選擇是否允許或不允許重定向..我可以在Opera中禁用您的頁面的重定向並查看整個事情。 '退出',可能是一個後備鏈接,是關鍵。 – Wrikken