1

我目前正在制作一些必须下载和上传的文件。该文件有一些不同的编码,并且仅在使用带有 BOM 的 UTF-8 打开文件时才有效。

目前我正在使用这个简单的标题header('Content-Type: text/html; charset=utf-8');,但我如何更改设置,以便文件文件将被视为带有 BOM 的 UTF-8。

希望得到一些帮助。谢谢!

4

1 回答 1

6

绝对没有必要在 HTML 文件中包含 BOM。(如果它真的包含不同的编码,那么 UTF-8 BOM 会被破坏,所以听起来你有点困惑。)

如果您希望将文件保存到磁盘并在不需要 UTF-8 的地方使用,您也可以添加一个元元素来指示编码:

<meta http-equiv='Content-Type' content='text/html; charset=utf-8'>

如果实际上您使用的是与 UTF-8 不同的编码,而不是 BOM,只需更改元属性中的值即可。

如果你真的必须在那里有一个 BOM,那么你需要确保它是你输出的第一件事,例如

echo "\xEF\xBB\xBF";

请参阅如何在 PHP 中输​​出 Excel 可以正确读取的 UTF-8 CSV?例如,这实际上是有意义的。

于 2013-07-02T12:12:02.877 回答