php - 解析 HTTP 状态码

标签 php http header http-status-codes

我正在使用 PHP 来解析 HTTP 状态代码响应的数字部分。给定一个标准的“HTTP/1.1 200 OK”响应,我会使用:

$data = explode(' ', "HTTP/1.1 200 OK");
$code = $data[1];

我不是 HTTP 方面的专家。我是否会遇到上面示例中代码不在 $data[1] 位置的响应?我只是想确保这种分隔响应代码的方法将始终适用于任何响应。

谢谢,布莱恩

最佳答案

如有疑问,请检查规范。在这种情况下,HTTP/1.1 的规范是 RFC2616 .在 Section 6.1 ,它描述了 Status-LineResponse 的第一个组成部分,如:

Status-Line = HTTP-Version SP Status-Code SP Reason-Phrase CRLF

也就是说 - 一个单独的 ASCII 空间 (SP) 必须分隔 HTTP-VersionStatus-Code - 如果你检查HTTP-Version 的定义(在 Section 3.1 中)不能包含空格,Status-Code 也不能。

所以您可以使用该代码。

关于php - 解析 HTTP 状态码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1442504/

相关文章:

php - 如何使用 laravel 6 在我的包中使用 auth 进行自定义保护?

php - Git::Windows:从远程存储库中提取区分大小写的文件

php - 动态变量PDO

java - 如何在 java 中制定 curl -XHEAD 请求

http - 通过 HTTP (MPEG-DASH) 进行流式传输有何意义?

c - 从一个 header 结构到另一个 header 中的结构体

php - 使用 TinCan API 从 Learning Locker LRS 获取语句

c - 如何在C程序中设置CURLOPT_HTTPHEADER的值,以便在HTTP Post请求中不发送HTTP Header?

PHP header 未按预期工作

internet-explorer - IE 接受标题更改,为什么?