首页 > 后端开发 > php教程 > 如何在 PHP 中发送自定义 HTTP 状态消息?

如何在 PHP 中发送自定义 HTTP 状态消息?

Susan Sarandon
发布: 2024-12-29 18:40:10
原创
246 人浏览过

How Can I Send Custom HTTP Status Messages in PHP?

PHP 响应代码:如何发送自定义 HTTP 状态消息

简介

网络中在应用程序中,通常需要向客户端传达特定的结果或错误消息。 HTTP 响应代码允许我们使用标准化数字代码来传达此信息,例如 HTTP 200 OK 或 404 Not Found。 PHP 提供了多种发送自定义 HTTP 响应代码的方法。

方法 1:组装响应行 (PHP >= 4.0)

header() 函数允许您设置自定义 HTTP 响应行,包括状态代码。但是,(快速)CGI PHP 需要特殊处理。

header("HTTP/1.1 200 OK");
登录后复制

对于(快速)CGI PHP:

$sapi_type = php_sapi_name();
if (substr($sapi_type, 0, 3) == 'cgi')
    header("Status: 404 Not Found");
else
    header("HTTP/1.1 404 Not Found");
登录后复制

方法 2:标头函数的第三个参数 ( PHP >= 4.3)

使用 PHP 4.3 及更高版本, header() 函数可以在第三个参数中设置响应代码。但是,第一个参数必须非空。两个选项是:

header(':', true, 404);
header('X-PHP-Response-Code: 404', true, 404);
登录后复制

方法 3:http_response_code 函数 (PHP >= 5.4)

PHP 5.4 引入了 http_response_code() 函数,它简化了流程:

http_response_code(404);
登录后复制

兼容性

PHP 5.4以下,可以使用以下兼容性函数:

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
作者最新文章
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板