PHP中的奇怪字符

时间:2020-03-05 18:39:59  来源:igfitidea点击:

这真让我抓狂。

我在工作中的测试服务器上有一个php文件,该文件无法正常工作。

<?
print 'Hello';
?>

它输出

???Hello

如果我创建一个新文件并将相同的脚本复制/粘贴到它,它将起作用!
为什么这个文件总是给我奇怪的字符?

解决方案

回答

那就是我们所看到的BOM(字节顺序标记)。

在编辑器中,应该有一种方法可以在没有BOM的情况下强制保存,这将解决问题。

回答

找到它,文件->编码->具有BOM的UTF8,更改为UTF :-)

我应该在浪费时间试图弄清楚之前先问一下:-)

回答

以防万一,这是BOM表的字节列表

Encoding    Representation (hexadecimal)
UTF-8   EF BB BF
UTF-16 (BE) FE FF
UTF-16 (LE) FF FE
UTF-32 (BE) 00 00 FE FF
UTF-32 (LE) FF FE 00 00
UTF-7   2B 2F 76, and one of the following bytes: [ 38 | 39 | 2B | 2F ]?
UTF-1   F7 64 4C
UTF-EBCDIC  DD 73 66 73
SCSU    0E FE FF
BOCU-1  FB EE 28 optionally followed by FF?