如果你的imagejpg之类的函数能生成图片却不能在浏览器上输出图像,那么你继续看下去就可以解决了。
首先,我拿了以前一份可以正常输出的文件和有问题的文件作对比,我没发现有一个字符的差别。是的,一个都没有差别。
不死心,我去网上下载了一个校对软件。然后真相渐渐浮出了水面
	
	
	
正如你所见,左边是正常的,右边是有问题的。中文乱码了,然后我马上去查看了两个文件的编码格式。
- 正常 的 是
utf-8格式, - 有问题的是
utf-8 + BOM格式。
然后百度一下这两个格式的区别: 
utf-8+BOM比utf-8多了三个字节前缀:0xEF0xBB0xBF,有这三个字节前缀的文本或字符串,程序可以自动判断它为utf-8格式,并按照utf-8格式来解析文本或字符串,否则,一个文本或者字符串在未知编码的情况下,需要按照字符编码规范去一个个验证
多了三个字节,而PHP的header函数又要求在它之前浏览器不能有任何输出,所以导致了这个问题的产生。