header() 函數向用戶端發送原始的 HTTP 報頭。
認識到一點很重要,即必須在任何實際的輸出被發送之前調用 header() 函數(在 PHP 4 以及更高的版本中,可以使用輸出緩存來解決此問題)
header(string,replace,http_response_code)
參數 | 描述 |
---|---|
string | 必需。規定要發送的報頭字元串。 |
replace | 可選。訓示該報頭是否替換之前的報頭,或添加第二個報頭。 預設是 true(替換)。false(允許相同類型的多個報頭)。 |
http_response_code | 可選。把 HTTP 響應代碼強制為指定的值。(PHP 4 以及更高版本可用) |
注釋:從 PHP 4.4 之後,該函數防止一次發送多個報頭。這是對頭部注入攻擊的保護措施。
例子:
<?php // Date in the past header("Expires: Mon, 26 Jul 1997 05:00:00 GMT"); header("Cache-Control: no-cache"); ( 使用者可能會設定一些選項來更改浏覽器的預設緩存設定。通過發送上面的報頭,您可以覆寫任何這些設定,強制浏覽器不進行緩存! ) header("Pragma: no-cache"); ?>