English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

Основные курсы PHP

Дополнительные курсы PHP

PHP & MySQL

PHP справочник

Примеры использования и примеры с функцией php getimagesize () для получения информации о изображении

Обработка изображений PHP

Функция getimagesize() используется для получения размера изображения и相关信息, при успешном выполнении возвращает массив, при неудаче возвращает FALSE и генерирует ошибку уровня E_WARNING.

Формат синтаксиса:

массив getimagesize ( строка $filename [, массив &$imageinfo ] )

Функция getimagesize() определяет размер любого файла изображения GIF, JPG, PNG, SWF, SWC, PSD, TIFF, BMP, IFF, JP2, JPX, JB2, JPC, XBM или WBMP и возвращает размер изображения, тип файла и высоту и ширину изображения.

Пример 1: Локальный файл изображения

<?php
list($width, $height, $type, $attr) = getimagesize("w3codebox-logo.png");
echo "Ширина: " . $width;
echo "Высота: " . $height;
echo "Тип: " . $attr;
?>

Результат примера вывода:

Ширина: 290
Высота: 69
Тип: 3
Атрибуты: width="290" height="69"

Пример 2: Удаленный файл изображения

<?php
$remote_png_url = 'http://ru.oldtoolbag.com/wp-content/themes/oldtoolbag.com/assets/img/logo-domain-green2.png';
$img_data = getimagesize($remote_png_url);
print_r($img_data );
?>

Результат примера вывода:

Массив
(
    [0] => 290
    [1] => 69
    [2] => 3
    [3] => width="290" height="69"
    [bits] => 8
    [mime] => image/png
)

Объяснение результатов

  • Индекс 0 предоставляет значение пикселей ширины изображения
  • Индекс 1 предоставляет значение пикселей высоты изображения
  • Индекс 2 предоставляет тип изображения, возвращается номер, где 1 = GIF, 2 = JPG, 3 = PNG, 4 = SWF, 5 = PSD, 6 = BMP, 7 = TIFF (intel byte order), 8 = TIFF (motorola byte order), 9 = JPC, 10 = JP2, 11 = JPX, 12 = JB2, 13 = SWC, 14 = IFF, 15 = WBMP, 16 = XBM
  • Индекс 3 предоставляет строку с шириной и высотой, которую можно напрямую использовать в теге HTML <image>
  • Индекс bits предоставляет количество бит для каждого цвета изображения в двоичном формате
  • Индекс channels предоставляет значения каналов изображения, для RGB изображения по умолчанию это 3
  • Индекс mime предоставляет информацию MIME изображения, которую можно использовать для отправки правильной информации в заголовке HTTP Content-type, например: header("Content-type: image/jpeg");

Обработка изображений PHP