Intereting Posts
Laravel 5 Class 'form' not found Страница заказов WooCommerce добавляет пользовательский столбец пользователя Использование SimpleXML для загрузки удаленного URL-адреса SQL_CALC_FOUND_ROWS / FOUND_ROWS () не работает в PHP Функции mysql в построителе запросов в laravel Использование C для вычисления в приложении PHP: стоит ли это? В PHP сравните два массива, затем создайте новый массив на основе определенной структуры? Два разных макета для гостевого пользователя и вошли в систему User-Yii2 как правильно отправлять push-уведомления PHP создает случайный файл tmp и получает полный путь Зачем избегать CGI для Python с хостом LAMP? Достигнут максимальный уровень вложенности функции «100», прерванный Застройщик запросов Laravel Общая ошибка 2031 Невозможно создать проект Zend Framework в Netbeans 6.9.1 PHP Неустранимая ошибка: вызов функции-члена функции find () для не-объекта, однако моя функция работает

Миниатюры PHP

Я смотрел на способ динамического создания эскизов с использованием PHP и GD, но каждый раз, когда я выбираю большое изображение, возможно, 10 мегапикселей около 4-5 МБ, он дает ошибку

**images/Surabhi_Cow.jpgimages/tn/Surabhi_Cow.jpg Fatal error: Allowed memory size of 31457280 bytes exhausted (tried to allocate 10368 bytes) in C:\Program Files\xampp\htdocs\MySite\Staff\test.php on line 51** 

Изменение memory_limit в php.ini до 60 делает трюк, но мой хост только позволяет memory_limit 32M. Какие еще варианты я могу генерировать эскизы «на лету»? Я проверил phpThumb (), но на самом деле не понял. Поэтому любые другие варианты приветствуются!

Вы хотите использовать ImageMagick . Это намного эффективнее при обработке больших изображений, чем GD.

Если все, что вы хотите сделать, это создавать эскизы. Я рекомендую этот красивый маленький скрипт под названием imagethumb.php . Вы можете скачать его здесь: http://www.olivo.net/software/imagethumb/

Этот скрипт создает превосходные эскизы с абсолютно никакой пикселизацией. Он принимает аргумент высоты или ширины, который вы добавляете к URL-адресу, вызывающему сценарий. Он действительно очень прост в использовании и поставляется с документацией (которую вы будете читать всего за 2 минуты).

Я попробовал другие скрипты, такие как «ThumbsUp» (например), прежде чем приступать к этому. BTW, он также отображает .png изображения, а также .gif (если я правильно помню). Функция кеша упростит работу на вашем сервере, если у вас большие файлы. Кроме того, я предполагаю, что на вашем сервере установлена ​​библиотека GD или ImageMagick . Удачи 😉

Как говорили другие, если изображения такие большие, пришло время сбросить GD и переключиться на ImageMagick. Одно слово предупреждения, хотя: сделайте все это в командной строке – в оболочках класса есть колеса, которые нуждаются в чертовски хорошем повторном изобретении, каждый последний.

Подумайте об использовании подхода на основе командной строки. Например, вы можете вызывать ImageMagick из командной строки для изменения размеров изображений.

Кроме того, в чистом PHP трудно понять, как вы можете редактировать изображения, которые больше (в формате RGB ), чем ваша оперативная память …

Я занимался некоторыми исследованиями по этой теме, и я нашел Imagick намного более эффективным для манипулирования большими изображениями. Вы либо передадите разрешенную память, либо максимальное время выполнения. Лучший подход – использовать библиотеку Imagick. Проверьте onfo на том, как создавать эскизы с php на лету, используя Imagick.