array getimagesize(string file, array image_info)
Функция getimagesize (листинг 16.3) по заданному имени файла возвращает массив, который состоит из четырех элементов и хранит размер изображения. Содержимое этого файла приведено в табл. 16.3. Тип изображения должен соответствовать типам, приведенным в табл. 16.1.

Таблица 16.3. Элементы массива для функции getimagesize

Элемент Описание
0 Ширина в пикселях
1 Высота в пикселях
2 Тип изображения
3 Строка наподобие height=150 width=200, которую можно использовать в теге img
bits Бит в выборке для форматаjpeg
channels Выборки в пикселе для формата jpeg
mime MIME-тип

 Необязательным аргументом image_info задается дополнительная информация из файла. Когда писалась данная книга, этот массив принимал значения маркеров APP 0-15 из файлов типа JPEG. Один из наиболее используемых маркеров - маркер APP13, являющийся блоком IPTC (International Press Telecommunications Council - Международный совет по телекоммуникациям в прессе). Эти блоки используются для передачи информации об электронных средствах для агентств новостей. Они хранятся в двоичном виде, поэтому, для того чтобы их декодировать, необходимо использовать функцию iptcparse. Более подробно о совете IPTC можно узнать на Web-узле по адресу <http://www.iptc.org/>. 
j Листинг 16.3. Функция getimagesize_
<?php
$file = "php.jpg";
$size = getimagesize($file, $info); $iptc = iptcparse($info['APP13']); //отобразить газетные заголовки из IPTC-блоков print("<h1>{$iptc['2#105'][0]}</h1>");
//отобразить изображение, используя газетные заголовки из блока
IPTC
print("<img src="$file" {$size[3]} alt=".
""{$iptc['2#120'][0]}"><br>n");
?>
string iptcembed(string iptc, string file, integer spool)
Функция iptcembed добавляет блоки IPTC в JPEG-файлы. По умолчанию блоки добавляются к файлу, и видоизмененный файл возвращается обратно. Это поведение можно изменить с помощью аргумента spool . При значении 1 или 2 модифицированный JPEG-файл будет переправлен непосредственно в браузер. При значении флага 2 JPEG-файл не возвращается как строка.
array iptcparse(string iptc_block)
Функция iptcparse принимает блок IPTC и возвращает массив, содержащий все теги этого блока.
array image_type_to_mime_type(int imagetype)
Функция image_type_to_mime_type возвращает MIME-тип, соответствующий заголовку Content-type, на основании одной из констант типа изображения (см. табл. 16.1).
read_exif_data
Функцию read_exif_data можно использовать в качестве аналога функции exif_read_data.