billfeller.github.io
billfeller.github.io copied to clipboard
utf8+bom头对php输出的影响
当php文件使用utf8+bom编码时,bom头3个字节 ef bb bf 将被当做不可见字符输出。
通常情况下,若输出是文本流,这3个字节不会对文本解析产生影响,但若输出的是二进制流,如图片二进流,则会导致图片解码失败。
如下示例,test.php是采用utf8+bom头编码的文件,输出的body是4个字节(Content-Length: 4),而不是预期的1个字节(Content-Length: 1)