首頁 >後端開發 >php教程 >如何在 PHP 中設定自訂 HTTP 回應代碼?

如何在 PHP 中設定自訂 HTTP 回應代碼?

Barbara Streisand
Barbara Streisand原創
2024-12-15 12:18:09158瀏覽

How to Set Custom HTTP Response Codes in PHP?

如何在 PHP 中發送 HTTP 回應代碼

從 PHP 腳本發送 HTTP 回應代碼對於提供與客戶端的正確通訊至關重要。本文介紹了發送自訂回應代碼的三種方法。

PHP 4.0 : 手動回應程式碼組裝

header() 函數可讓您定義自訂 HTTP 回應行,包括 HTTP 回應碼。但是,對於 CGI PHP,您需要使用 Status HTTP 標頭。

// Assembly manually
header("HTTP/1.1 200 OK");

// For CGI PHP
if (substr(php_sapi_name(), 0, 3) == 'cgi')
    header("Status: 404 Not Found");
else
    header("HTTP/1.1 404 Not Found");

PHP 4.3 :標頭函數的第三個參數

為了避免手動方法的解析問題,您可以使用header() 函數的第三個參數,它允許您指定響應代碼。

// Set the non-empty first argument to anything
header(':', true, 404);

// Use a custom header field name
header('X-PHP-Response-Code: 404', true, 404);

PHP 5.4 : http_response_code() 函數

PHP 5.4 引入了專用的 http_response_code() 函數,它簡化了設定回應碼的任務。

http_response_code(404);

PHP 4.3 的相容性函數

對於5.4以下的PHP版本,可以使用相容性函數來提供http_response_code() 功能。

function http_response_code($newcode = NULL)
{
    static $code = 200;
    if($newcode !== NULL)
    {
        header('X-PHP-Response-Code: '.$newcode, true, $newcode);
        if(!headers_sent())
            $code = $newcode;
    }       
    return $code;
}

以上是如何在 PHP 中設定自訂 HTTP 回應代碼?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn