首页 >后端开发 >php教程 >如何在 PHP 中设置自定义 HTTP 响应代码?

如何在 PHP 中设置自定义 HTTP 响应代码?

Barbara Streisand
Barbara Streisand原创
2024-12-15 12:18:09151浏览

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