在PHP中将字符串编码为带有BOM的UTF-8字符串
使用utf8_encode时如何强制PHP添加BOM?
这是我想要做的:
$zip->addFromString($filename, utf8_encode($xml));
不幸的是(对我来说),结果将不会在开头有BOM标记。
没有找到相关结果
已邀请:
1 个回复
淘圃跺枯替
,因此您可以在转换为UTF-8后将其附加到您的字符串。
但请注意。
想要一个ISO-8859-1字符串。如果您正在使用XML,请确保XML尚未经过UTF-8编码。对文档的评论表明,该功能以各种有趣的方式被破坏,因此除非您知道需要它,否则不应该抛弃它。 请记住,PHP字符串只是愚蠢的,不知道的字节。它们没有附加字符集,因此如果字符串中的数据已经是UTF-8,则无需运行转换。 此外,链接的维基百科文章说: 虽然Unicode标准允许使用UTF-8的BOM,但它不需要或推荐它。字节顺序在UTF-8中没有意义,因此BOM仅用于将文本流或文件标识为UTF-8或者是从具有BOM的另一种格式转换的。 您可能不需要开始使用BOM tapdance。