解决php生成GD图片不显示问题

首先看下生成图片的代码

<?php
$img   = @imagecreate(110, 20) or die("GD图像创建失败!");
$bg    = imagecolorallocate($img, 255, 255, 255);
$text_color = imagecolorallocate($img, 55, 55, 55);
imagestring($img, 5, 0, 3, "I'm leo", $text_color);
header('Content-Type:image/png');
imagepng($img);
imagedestroy($img);

浏览器里不显示

以上代码,经过多次调用之后,图片在浏览器里显示不出来,只有一个未加载成功,裂开的小图标。

解决办法

经多番搜索,一个函数就解决了这个问题。

那就是在header前加入以下代码:

ob_clean(); // --清空(擦掉)输出缓冲区

注:问题虽然解决了,我还是没有明白为什么要这么做。难道是经过多次调用,缓冲区还有影响?哪位仁兄如果知道的话,请留言详解。多谢!

声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。