php header用於向客戶端發送原始的HTTP標頭,該函數的語法是“header(string,replace,http_response_code)”,其中參數string表示要傳送的標頭字串。
PHP header() 函數
##定義與用法header() 函數向客戶端發送原始的HTTP 標頭。 認識到一點很重要,即必須在任何實際的輸出被發送之前調用header() 函數(在PHP 4 以及更高的版本中,您可以使用輸出緩存來解決此問題):<html> <?php // 结果出错 // 在调用 header() 之前已存在输出 header('Location: http://www.example.com/'); ?>語法
header(string,replace,http_response_code)參數 string 必要。規定要傳送的報頭字串。 replace 可選。指示該報頭是否替換先前的報頭,或新增第二個報頭。 預設是 true(替換)。 false(允許相同類型的多個報頭)。 http_response_code 可選。把 HTTP 回應碼強制為指定的值。 (PHP 4 以及更高版本可用)提示和註解註解:從 PHP 4.4 之後,該函數防止一次發送多個標頭。這是對頭部注入攻擊的保護措施。 範例範例 1
<?php // Date in the past header("Expires: Mon, 26 Jul 1997 05:00:00 GMT"); header("Cache-Control: no-cache"); header("Pragma: no-cache"); ?> <html> <body> ... ...註解:使用者可能會設定一些選項來變更瀏覽器的預設快取設定。透過發送上面的報頭,您可以覆蓋任何這些設置,強制瀏覽器不進行快取! 範例2提示使用者儲存一個產生的PDF 檔案(Content-Disposition 標頭用於提供一個建議的檔案名,並強制瀏覽器顯示儲存對話方塊):
<?php header("Content-type:application/pdf"); // 文件将被称为 downloaded.pdf header("Content-Disposition:attachment;filename='downloaded.pdf'"); // PDF 源在 original.pdf 中 readfile("original.pdf"); ?> <html> <body> ... ...註解:微軟IE 5.5 存在一個阻止以上機制的bug。透過升級為 Service Pack 2 或更高的版本,可以解決該 bug。 更多相關知識,請造訪
PHP中文網!
以上是php的header的用法詳解的詳細內容。更多資訊請關注PHP中文網其他相關文章!