未来往事

php imagecreatefromjpeg return bool(false) 雨

Rinald 本站原创 PHP 2016/09/29 18:01
错误描述:
imagecreatefromjpeg返回bool(false)
imagecreatefromjpeg():xxx.jpg is not a valid JPEG file
imagecreatefromjpeg(): gd-jpeg: JPEG library reports unrecoverable error

PHP载入图像的函数:
imagecreatefromgif()
imagecreatefromjpeg()
imagecreatefrompng()
imagecreatefromwbmp()
imagecreatefromstring()
作用:由文件或URL或字符串中的图像流创建一个新图象,成功后返回图象资源,失败后返回FALSE。
PS:简单的理解其作用就是将要进行分割的图片临时读到内存里面。

错误注释:
错误信息翻译:图片不是一个有效的jpeg文件

错误原因:
出现这种错误一般是因为在处理图片时用的函数和图片格式不一致导致的,例如处理的是png格式的图片你使用的是imagecreatefromjpeg函数。
当然,你可以会疑惑:图片扩展名是.jpg,用imagecreatefromjpeg函数处理没有不对的地方啊?
通常情况下,图片的扩展名和图片的格式一致。但是有些时候也会存在图片的扩展名和图片格式不一致的情况,例如人为修改,本来是png或gif的图片把扩展名改成了jpg,所以有时候我们看到的扩展名并不一定就是图片文件该有的正确的扩展名,所以程序在处理过程中就会抛错返回FALSE。

解决思路:
在进行处理图片时使用getimagesize函数获取图片格式,进而进行判断该使用的图片处理函数。同时,判断返回值是否为FALSE,如果为FALSE尝试其他函数类型。
作者:Rinald @『未来往事 | 记录生活,存储回忆!
原文地址:http://fity.cn/post/590/
本站采用「署名 4.0 国际(CC BY 4.0)」创作共享协议。通俗地讲,只要在使用时署名,那么使用者可以对本站所有原创内容进行转载、节选、混编、二次创作,允许商业性使用。除非在文章正文内单独说明,本站欢迎各种形式的转载。互联网技术更新很快,本站很多文章都具有实效性,我会及时更新原文,但转载的文章无法通知更新。为了不给读者造成困惑或误导,请大家在转载时保留此出处信息。
发表评论
  昵称 [注册]
  密码 (游客无需密码)
  网址
  电邮(电子邮件地址不会被公开, 仅用于接收评论回复提醒使用)
OpenID登入 权限选项 表情