Laravel 4.2 抛出 NotReadableException "Unsupported image type. GD driver is only able to decode JPG, PNG, GIF or WebP files."

标签 laravel image jpeg gd

在检查了大约 20 个解决方案后,我放弃了并需要帮助。 我有 2 个 JPG 文件。两者都有适当的 mime,它们对于 upload_max_filesize 来说不是太大,名称可以,路径也可以。每个解决方案都是关于其中一个问题。

我的问题是当我在第一个图像上运行脚本时它没问题,没有错误,对象被创建:

$image1 = Image::make(public_path()."/uploads/goodimage.jpg");

查看示例: https://app.esticrm.pl/uploads/goodimage.jpg

当我在其他图片上运行它时出现错误:

$image2 = Image::make(public_path()."/uploads/badimage.jpg");

查看示例: https://app.esticrm.pl/uploads/badimage.jpg

错误信息:

Intervention \ Image \ Exception \ NotReadableException Unsupported image type. GD driver is only able to decode JPG, PNG, GIF or WebP files.

Windows 和 Linux 上的情况相同。我检查过的每个图形程序和浏览器都可以打开文件。 这些问题在 PHP 从 5.5.x 升级到 5.6.35 后开始出现。之前还好。

最佳答案

好的,我找到了解决方案:

$image2 = Image::make(file_get_contents(public_path()."/uploads/badimage.jpg"));

也适用于表单中的文件对象:

$image2 = Image::make(file_get_contents(Input::file('upload_file'));

关于Laravel 4.2 抛出 NotReadableException "Unsupported image type. GD driver is only able to decode JPG, PNG, GIF or WebP files.",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52486859/

相关文章:

Laravel 基本认证

php - mock ,应用程序实例无法进行某些 laravel 测试

Laravel 中的 PHP 类型提示

android - 是否可以同时处理多个 9 补丁图像?

cuda - CUDA 中的 JPEG 库

java - 在不损失质量的情况下读取/写入 JPG 图像的最快方法?

image - 将扩展名为 ".jpg"的一堆 PNG 图片重命名为 ".png"

php - 在 laravel 5.6 中迁移时如何检查 mongo 集合是否存在?

Python:理解 os.listdir() 方法

javascript - 有没有办法用纯javascript将图像复制到剪贴板而无需库?