PHP标题解析

时间:2016-01-03 06:34:15

标签: php http-headers

我在使用PHP解析http标头时遇到问题。

当我运行此代码时:

$headers = getallheaders();

所有标头都加载到$headers数组中。但是,如果任何数组键名称具有" - "在其中,相应的结果为null。例如:

echo $headers[User-Agent];

将返回null,而:

echo $headers[Host];

将正常返回值。

这是一个错误还是我遗失了什么?

2 个答案:

答案 0 :(得分:1)

尝试使用doube / single引号,如下面的代码:

<?php
  $headers = getallheaders();
  echo $headers["User-Agent"];
  echo $headers["Host"];
?>

输出:

Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Ubuntu Chromium/44.0.2403.89 Chrome/44.0.2403.89 Safari/537.36main.xfiddle.com

php fiddle

中试用此代码

答案 1 :(得分:1)

尝试转储$headers并查看其中的内容。

var_dump($headers);

查找可用密钥,然后使用它们。

var_dump($headers['User-Agent']);

请注意,密钥区分大小写。