//##################################### // determine image type //##################################### // declare variables $is_gif = false; $is_jpg = false; $is_png = false; $im = @imagecreatefromgif($tempFullPath); if ($im) { $is_gif = true; } $im = @imagecreatefromjpeg($tempFullPath); if ($im) { $is_jpg = true; } $im = @imagecreatefrompng($tempFullPath); if ($im) { $is_png = true; } if ($is_gif == false AND $is_jpg == false AND $is_png == false) { $done = 'yes'; }
jednak problem pojawia się, gdy użyje jej na serwerze nginx, a dokładnie gdy obrazek nie ma rozszerzenia JPG tylko PNG, to skrypt nie wykonuje się dalej, a w logach wysypuje błędem:
Kod
ErrorException: Fatal Error: imagecreatefromjpeg(): gd-jpeg: JPEG library reports unrecoverable error: Not a JPEG file: starts with 0x89 0x50 - library/Andy/ConvertImage/DataWriter.php:216
W php.ini mam wyłączyłem pokazywanie błędów (display_errors Off), jednak to nic nie dało, czy jest jakiś sposób, aby skrypt się wykonywał dalej?
Dokładna linijka odpowiedzialna za błąd to:
Kod
$im = @imagecreatefromjpeg($tempFullPath);
tak jakby małpa nie wyłączała błędów na nginxie...
