【问题标题】:In header(), is 'Content-Type' === 'Content-type' as far as sending duplicate/replacing headers is concerned?在 header() 中,就发送重复/替换标头而言,'Content-Type' === 'Content-type' 是什么?
【发布时间】:2011-12-04 20:03:53
【问题描述】:

在 PHP 中,文档说您可以通过 header() 的第二个布尔参数替换以前设置的标头。

我想知道:HTTP 标头是否区分大小写或以任何方式规范化?

如果我使用:

    header('Content-Type: text/plain');
    header('Content-type: text/html');

... 它会发送一个或两个不同的标头吗?

同样,如果我使用:

    header('Content-Type: text/plain');
    header('Content-type: text/html', TRUE);

...会(正确吗?)取代第一个?

【问题讨论】:

  • 您可以使用浏览器的开发工具对其进行测试。使用给定的行运行脚本,并检查浏览器接收到的响应标头。
  • 从您之前的问题来看,您是否遇到了与该主题相关的问题?如果是这样...直接发布您的问题;如果你只问真正的问题,你会更快得到答案。
  • “真正的问题”是有人声称应用程序的一部分正在发送多个“内容类型”标头。我的假设是他们错了。我没有四处猜测,而是开始研究,并询问了 HTTP 特定的问题。我随后添加了这个特定于 PHP 的版本,以向社区添加更多谷歌搜索结果;此外,如果有人可能会提出 PHP 的特殊特性,而该特性可能会被其他假设忽略。

标签: php http-headers


【解决方案1】:

根据RFC 2616,HTTP头字段名称不区分大小写。

PHP 确实做到了这一点,并将第一个标题替换为第二个。

【讨论】:

  • his previous question 的回答中提到了这一点 - 这个问题有点像是询问 PHP 是否符合它。
  • @BoltClock 添加了更多信息。谢谢。
猜你喜欢
  • 2010-10-12
  • 2021-05-20
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2014-11-11
  • 2023-01-26
  • 2014-09-08
  • 1970-01-01
相关资源
最近更新 更多