当神不再是我们的信仰,那么信仰自己吧,努力让自己变好,不辜负自己的信仰!

imagejpg-imagepng-imagegif可以生成图片却无法输出图像到浏览器

如果你的imagejpg之类的函数能生成图片却不能在浏览器上输出图像,那么你继续看下去就可以解决了。
首先,我拿了以前一份可以正常输出的文件和有问题的文件作对比,我没发现有一个字符的差别。是的,一个都没有差别。
不死心,我去网上下载了一个校对软件。然后真相渐渐浮出了水面
《imagejpg-imagepng-imagegif可以生成图片却无法输出图像到浏览器》
正如你所见,左边是正常的,右边是有问题的。中文乱码了,然后我马上去查看了两个文件的编码格式。
1. 正常 的 是utf-8格式,
2. 有问题的是utf-8 + BOM格式。
然后百度一下这两个格式的区别:

utf-8+BOMutf-8多了三个字节前缀:0xEF0xBB0xBF,有这三个字节前缀的文本或字符串,程序可以自动判断它为utf-8格式,并按照utf-8格式来解析文本或字符串,否则,一个文本或者字符串在未知编码的情况下,需要按照字符编码规范去一个个验证
多了三个字节,而PHPheader函数又要求在它之前浏览器不能有任何输出,所以导致了这个问题的产生。

点赞

发表评论

电子邮件地址不会被公开。 必填项已用*标注