當前位置: 首頁>>代碼示例 >>用法及示例精選 >>正文


PHP header()用法及代碼示例


header()函數是PHP中的內置函數,用於發送原始HTTP標頭。 HTTP函數是那些在發送任何其他輸出之前操縱由Web服務器發送到客戶端或瀏覽器的信息的函數。 PHP header()函數以原始格式將HTTP標頭發送到客戶端或瀏覽器。在將HTML,XML,JSON或其他輸出發送到瀏覽器或客戶端之前,將原始數據與服務器發出的請求(尤其是HTTP請求)一起作為標頭信息發送。 HTTP標頭提供有關在消息正文中發送的對象的必需信息,更確切地說是有關請求和響應的信息。

用法:

void header( $header, $replace = TRUE, $http_response_code )

參數:此函數接受上述和以下所述的三個參數:


  • $header:此參數保存標題字符串。頭調用有兩種類型。第一個標頭以字符串“HTTP/”開頭,該字符串用於確定要發送的HTTP狀態代碼。標頭的第二種情況是“Location:”。它是必填參數。
  • $replace:它是可選參數。它表示標題應替換先前的標題或添加第二個標題。默認值為True(將替換)。如果$replace值為False,則將強製使用多個相同類型的標頭。
  • $http_response_code:它是一個可選參數。它將HTTP響應代碼強製為指定值(PHP 4.3及更高版本)。

返回值:此函數不返回任何值。

範例1:

<?php 
// PHP program to describes header function 
  
// Redirect the browser 
header("Location: http://www.geeksforgeeks.org"); 
  
// The below code does not get executed  
// while redirecting 
exit; 
  
?>

輸出:

This will change location of header, i.e. redirect to the URL

範例2:

<?php 
// PHP program to describes header function 
  
// Set a past date 
header("Expires: Sun, 25 Jul 1997 06:02:34 GMT"); 
header("Cache-Control: no-cache"); 
header("Pragma: no-cache"); 
?> 
  
<html> 
    <body> 
        <p>Hello World!</p> 
      
        <!-- PHP program to display 
        header list --> 
        <?php 
            print_r(headers_list()); 
        ?> 
    </body> 
</html>

輸出:

Hello World!

Array ( 
    [0] => X-Powered-By: PHP/7.0.33 
    [1] => Expires: Sun, 25 Jul 1997 06:02:34 GMT 
    [2] => Cache-Control: no-cache 
    [3] => Pragma: no-cache 
)

上麵的示例通過向not-cache發送覆蓋瀏覽器設置的標頭信息來幫助防止緩存。

注意:在示例中,多次使用header()函數是因為一次允許發送一個標頭(自PHP 4.4起),以防止標頭注入攻擊。

用途:

  • 更改頁麵位置
  • 設定時區
  • 設置緩存控製
  • 發起力量下載
  • 發送HTTP狀態

參考: http://php.net/manual/en/function.header.php



相關用法


注:本文由純淨天空篩選整理自gekcho大神的英文原創作品 PHP | header() Function。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。