Введение
PHP не ограничен созданием только HTML страничек. Он так же позволяет
создавать и работать с файлами изображений в различных форматах
включая GIF, PNG,
JPEG, WBMP, и XPM.
Что более удобно, PHP позволяет выводить изображение в потоке непосредственно в браузер. Для этого
необходимо скомпилировать PHP с графической библиотекой GD, содержащей
функции для работы с изображениями. Для работы с GD могут потребоваться
другие библиотеки (в зависимости от формата изображений, с которыми возникла необходимость работать).
Существует стандартная функция PHP для получения размера изображения следующих форматов изображений:
JPEG, GIF,
PNG, SWF,
TIFF и JPEG2000.
С модулем EXIF доступна работа
с информацией, хранящейся в заголовках
JPEG и TIFF изображений. Таким образом можно
читать мета-данные, сгенерированные цифровыми фотоаппаратами. Модуль EXIF
не требуется библиотеке GD.
Замечание:
Прочитайте раздел требований, чтобы узнать, как расширить возможности чтения,
записи и модификации изображений. Чтобы иметь возможность читать мета-данные
изображений, взятых с цифровых фотоаппаратов нужно, уже упомянутый
модуль EXIF.
Замечание:
Функция getimagesize() не требует наличия библиотеки GD.
Предостережение
Тогда как поставляемая с PHP библиотека GD использует менеджер памяти Zend, то
системная нет. Соответственно ограничение memory_limit не работает.
GD поддерживает ряд форматов. Ниже приведён список этих форматов и
пометки о доступности, включая поддержку чтения и записи.
Форматы, поддерживаемые GD
Формат |
Поддержка чтения |
Поддержка записи |
Примечания |
JPEG |
true |
true |
|
PNG |
true |
true |
|
GIF |
true |
true |
|
XBM |
true |
true |
|
XPM |
true |
false |
|
WBMP |
true |
true |
|
WebP |
true |
true |
|
BMP |
true |
true |
Доступно, начиная с PHP 7.2.0 |
Несмотря на то, что большинство форматов в приведённой таблице доступны для чтения и записи, это не значит,
что PHP был собран с их поддержкой. Чтобы узнать какие форматы были включены для GD при сборке,
используйте функцию gd_info(). Для дополнительной информации смотрите
раздел об установке.