php流输出图片
发布时间: 2023-10-10 19:34:07
‘壹’ php文件可以输出图片却无法显示出来!
经测试2种方式都可以正确显示,据估计,你的第2种方式不能正常显示的原因在于:
你在第2种方式里,除了 img 输出外,还有其它输出。
请参看下面的示例代码:
<?php
//创建新的图像实例
$im=imagecreatetruecolor(100,100);
//设置背景为白色
imagefilledrectangle($im,0,0,99,99,0xFFFFFF);
//在图像上写字
imagestring($im,3,40,20,'GDLibrary',0xFFBA00);
//echo"这一行如果加上就不能正常显示下面的图像了。<br/>";
//输出图像到浏览器
header('Content-Type:image/gif');
imagegif($im);
imagedestroy($im);
?>
为什么第 2 种方式,不能在header前面有内容,究其原因,请参看以下说明:
header()必须在任何实际输出之前调用,不管是普通的html标签,还是文件里面的空行、空格或者是PHP文件里的空行、空格。
简单一句话:在header()被调用之前有输出就会出错。
‘贰’ php 读取图片并输出
<?php
header('Content-Type:image/png');
$url="http://hbyw.e21.e.cn/global/gd.php";//图片链接
$ch=curl_init();
//Cookie:PHPSESSID=
curl_setopt($ch,CURLOPT_URL,$url);
curl_setopt($ch,CURLOPT_COOKIE,'PHPSESSID=');//如果不需要cookies就删除这条语句
curl_setopt($ch,CURLOPT_RETURNTRANSFER,0);
curl_setopt($ch,CURLOPT_TIMEOUT,0);//忽略超时
curl_setopt($ch,CURLOPT_NOBODY,false);
$str=curl_exec($ch);
curl_close($ch);
热点内容