php 输出图片 不显示不全,图片水印输出不能正常显示问题!

$img = "img/iphone.jpg";$info = getimagesize($img);//获取图片信息$type = image_type_to_extension($info[2],false);//图片后缀$fun = "imagecreatefrom{$type}";//确定后缀选择相应函数$image = $fun($img);//利用函数接入图片地址$img_mark = "img/ulogo.png";//设置水印路径$info_mark = getimagesize($img_mark);//获取水印图片基本信息$type_mark = image_type_to_extension($info_mark[2],false);//获取图片类型$fun_mark = "imagecreatefrom{$type_mark}";//$water = $fun_mark($img_mark);imagecopymerge($image, $water, 20, 30, 0, 0, $info_mark[0],$info_mark[1],30);//合并图片imagedestroy($water);header('Content-type:'.$info['mime']);//告诉浏览器是图片输出$func = "image{$type}";//选择相应函数调用$func($image);//浏览器输出图片$func($image,"newimg.".$type);//保存图片imagedestroy($image);//销毁图片

$func($image);

怎我这里不能输出图片在浏览器上显示?但又能保存图片到根目录下奇怪!!!

回复讨论(解决方案)

不能显示是什么意思?一个叉?

去掉程序文件的 BOM 头和多余的空格、空行

不能显示是什么意思?一个叉?

去掉程序文件的 BOM 头和多余的空格、空行

果真是BOM在作怪,设了无BOM格式URF8编码就可以了。为何会这样呢,可以解析下吗?

BOM 是若干个字符(utf-8是3个),但他并不属于图片的内容

不是图片的内容 加上 图片的内容,结果显然就不是图片了

BOM 是若干个字符(utf-8是3个),但他并不属于图片的内容

不是图片的内容 加上 图片的内容,结果显然就不是图片了

那怎么防止BOM的出现?

有时页面中又没有BOM出现,有时又会出现真奇怪~~~难道是工具问题?

BOM 头是你偏好 所谓的国际化 造成的

其实 BOM 不仅会影响图片的输出、文件的下载,还会影响页面的布局和 json 数据的解码

如果你一定要用 utf-8 编码保存文件,那么就一定要养成 无BOM 的习惯

其实在程序中很少有中文字符串常量的,所以并不需要保存为 utf-8 的

本文原创发布php中文网,转载请注明出处,感谢您的尊重!

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值