GDLib — recoverable error: Premature end of JPEG file

Внезапно и неожиданно при переезде сайта с привычного apache на IIS функции imagecreatefromjpeg() и imagecreatefromstring() стали выдавать ошибку. При чем не на все подряд файлы, а лишь на избранные. Как пишут тут проблема давняя и ошибка возникает при чтении jpeg, созданных при помощи неких загадочных графических редакторов для mac.

Там же описано и решение:

  • php 4 : ничего делать не нужно и так все замечательно работает (у кого-то еще используется php 4?)…
  • php 5.0 – 5.1.2 : предлагается обновить версию php.
  • php 5.1.3 : подкорректировать настройку php ini_set(‘gd.jpeg_ignore_warning’, 1);

Однако, у нас картинка читается из базы, значит imagecreatefromjpeg() не подходит, а для imagecreatefromstring() способ не подошел.

Осталось только решение в лоб — @:

$image = @imagecreatefromstring($ourImageString);

Некрасиво…

Добавить комментарий


XHTML: You can use these tags: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong> <pre lang="" line="" escaped="" highlight="">