0

可能重复:
PHP 中的“警告:标头已发送”

当我使用 utf-8 bom 创建我的 php 文件时,header() 函数不起作用,因为 bom 字符是在 http 标头之前发送的。

  • 这是否意味着我们不应该在 php 源文件中使用 bom?
  • 它是功能还是错误?
  • 在使用 utf-8 编码的 php 源文件时,您有什么建议?
4

2 回答 2

0

BOM 是发送到浏览器的实际数据,但是浏览器会忽略它,一旦发送,您将无法发送标头,除非您使用输出缓冲。一般不使用BOM。如果您使用的文本编辑器需要 BOM,则将编辑器更改为不那么过时的东西。

于 2012-12-04T12:10:38.363 回答
0
  • BOM 在 UTF-8 中是无用的。
  • 两者都不是。PHP 正在按预期工作。您的文件包含此内容,并且 PHP 按预期工作,因为它首先输出开始<?php标记之前的所有数据:

--

<byte order mark><?php // code here

--

  • 不要使用 BOM。
于 2012-12-04T12:10:48.447 回答