image_lib в CodeIgniter не работает ... код просто останавливается ... без ошибок, ничего - PullRequest
2 голосов
/ 29 марта 2011

Не могу понять, почему image_lib (библиотека манипулирования изображениями) в CodeIgniter не работает.У меня он отлично работает на моей локальной машине, поэтому я знаю, что код правильный.Но когда я загружаю на рабочий сервер, попытка создать миниатюру из изображения просто останавливает мертвый код в его треках.

Обидно, что image_lib не выдает сообщение об ошибке ... страницапросто останавливается в этот момент ... Вот мой фрагмент кода

$config = array(
    'source_image' => '/data/servers/misc/www_thesite_com/files/originals/thepicture.jpg',
    'new_image' => '/data/servers/misc/www_thesite_com/files/thumbs',
    'maintain_ratio' => true,
    'create_thumb' => true,
    'width' => 150,
    'height' => 100
);
$this->load->library('image_lib', $config);
$this->image_lib->resize();
$ThumbnailName = 'thepicture_thumb.jpg';

Я также пытался проверить, используя следующий код:

if (!$this->image_lib->resize()) {
     echo $this->image_lib->display_errors();
}

Но ничегослучается.Все просто останавливается в $ this-> image_lib-> resize ();без каких-либо ошибок.

Еще одно замечание ... GD2 успешно установлен.Я могу выполнять другие стандартные операции с изображениями без помех, когда не использую CodeIgniter.

Есть идеи?

Ответы [ 3 ]

10 голосов
/ 08 августа 2011

У меня была такая же проблема, и я исправил это с помощью

$this->image_lib->initialize($config);

сразу после

$this->load->library('image_lib', $config);

Кажется, что предоставления конфигурации при загрузке библиотеки недостаточно, и вам нужно инициализировать

2 голосов
/ 29 марта 2011

Если после вызова функции не выполняется никакой код, я ожидаю, что проблема связана с сервером. Это также верно, если локальная версия работала, а рабочая версия ломалась.

Возможно, достигнут предел памяти вашего сервера или ваша папка с изображениями не имеет разрешения на запись.

1 голос
/ 23 марта 2012

Относительно требования включить последующий вызов

$this->image_lib->initialize($config);

Возможно, это связано с автозагрузкой библиотеки image_lib.

...