gd_info
image_type_to_extension
Image Funktionen
PHP Manual

# getimagesize

(PHP 4, PHP 5)

getimagesize — Ermittelt die Größe einer Grafik

### Beschreibung

array getimagesize ( string `$filename` [, array `&$imageinfo` ] )

Die Funktion getimagesize() ermittelt die Dimensionen der übergebenen Grafik-Datei. Es werden die Ausmaße in Abhängigkeit vom Grafik-Typ sowie die Höhe und Breite als ein String zurückgegeben. Dieser kann innerhalb eines regulären HTML `IMG`-Tags verwendet werden. Ausserdem wird der entsprechende HTTP Content-Type zurückgegeben.

getimagesize() kann im Parameter `imageinfo` weitere Informationen liefern.

> Hinweis: Beachten Sie daß JPC und JP2 aus Komponenten mit verschiedener Farbtiefe bestehen können. In diesem Fall entspricht der Wert für "bits" dem höchsten gefundenen Wert. Des weiteren können JP2-Dateien mehrere JPEG 2000 Codestreams enthalten. In diesem Fall wird getimagesize() Werte entsprechend des ersten gefundenen Codestreams zurückgeben.

> Hinweis: Informationen über Icons werden für das Icon mit der höchsten Bitrate ermittelt.

### Parameter-Liste

`filename`

  Die zu überprüfende Datei. Dabei kann es sich um eine lokale Datei oder, eine entsprechende Konfiguration vorausgesetzt, um eine entfernte Datei handeln die über einen unterstützen Stream gelesen wird.

`imageinfo`

  Dieser optionale Parameter erlaubt es, erweiterte Informationen aus der Datei zu ermitteln. Momentan werden die verschiedenen JPG APP Markierungen als assoziatives Array zurückgegeben. Diese Markierungen werden von einigen Programmen verwendet um Textinformationen in Grafiken zu speichern. Gebräuchlich ist die Einbettung von IPTC » http://www.iptc.org/ Informationen in die APP13-Markierung. Sie können iptcparse() benutzen, um die binäre APP13-Markierung in ein lesbares Format zu übertragen.

### Rückgabewerte

Gibt ein Array mit fünf Elementen zurück.

Index 0 und 1 enthalten Breite respektive Höhe der Grafik.

> Hinweis: Einige Formate enthalten keine oder mehrere Grafiken. In diesen Fällen ist getimagesize() möglicherweise nicht in der Lage, die Dimensionen zu ermitteln; der Rückgabewert für Breite und Höhe in ist in diesen Fällen 0.

Index 2 ist eine der IMAGETYPE_XXX-Konstanten entsprechend des Typs der Grafik.

Index 3 ist eine Zeichenkette mit dem Attributen Breite und Höhe in der Form height="yyy" width="xxx" zur Verwendung in einem IMG-Tag.

mime entspricht dem MIME-Type der Grafik. Diese Information kann zur Auslieferung von Grafiken mit dem entsprechenden HTTP Content-type-Header dienen.

Beispiel #1 getimagesize() und MIME-Type

`<?php
$size = getimagesize($filename);
$fp = fopen($filename, "rb");
if ($size && $fp) {
header("Content-type: {$size['mime']}");g
fpassthru($fp);
exit;
} else {
// Fehler
}
?>`

channels hat für RGB-Grafiken den Wert 3, für CMYK den Wert 4. bits entspricht der Anzahl der Bits pro Farbe. Allerdings kann diese Angabe für einige Formate irreführend sein. GIF nutzt immer drei Kanäle pro Pixel, aber die Anzahl der Bits pro Pixel kann für ein animiertes GIF mit einer globalen Farbtabelle nicht errechnet werden.

Gibt im Falle eines Fehlers `FALSE` zurück.

### Fehler/Exceptions

Wenn ein Zugriff auf die mit `filename` angegebene Grafik nicht möglich ist oder es sich um keine valide Grafik handelt wird ein Fehler vom Typ `E_WARNING` generiert. Bei einem Lesefehler wird ein Fehler vom Typ `E_NOTICE` erzeugt.

### ChangeLog

Version | Beschreibung
--- | ---
5.3.0 | Unterstützung für Icons
5.2.3 | Lesefehler erzeugen eine `E_NOTICE` statt einer `E_WARNING`.
4.3.2 | Unterstützung für JPC, JP2, JPX, JB2, XBM und WBMP wurde hinzugefügt.
4.3.2 | Der Parameter `imageinfo` unterstützt JPEG2000
4.3.0 | bits und channels sind auch für andere Grafik-Formate verfügbar
4.3.0 | mime wurde hinzugefügt.
4.3.0 | Unterstützung für SWC wurde hinzugefügt.
4.2.0 | Unterstützung für TIFF wurde hinzugefügt.
4.0.5 | Unterstützung für URLs wurde hinzugefügt.

### Beispiele

Beispiel #2 getimagesize (Datei)

`<?php
list($width, $height, $type, $attr) = getimagesize("img/flag.jpg");
echo "<img src=\"img/flag.jpg\" $attr alt=\"getimagesize() example\" />";
?>`

Beispiel #3 getimagesize (URL)

`<?php
$size = getimagesize("http://www.example.com/gifs/logo.gif");
// if the file name has space in it, encode it properly
$size = getimagesize("http://www.example.com/gifs/lo%20go.gif");
?>`

Beispiel #4 getimagesize() gibt IPTC zurück

`<?php
$size = getimagesize("testimg.jpg", $info);
if (isset($info["APP13"])) {
$iptc = iptcparse($info["APP13"]);
var_dump($iptc);
}
?>`

### Anmerkungen

> Hinweis: Die Funktion getimagesize() benötigt nicht die GD-Bibliothek.

### Siehe auch

- image_type_to_mime_type()
- exif_imagetype()
- exif_read_data()
- exif_thumbnail()

gd_info
image_type_to_extension
Image Funktionen
PHP Manual