exif_read_dataLiest die EXIF-Header von JPEG oder TIFF aus Beschreibung
array exif_read_data
( string
$filename
[, string $sections
[, bool $arrays
[, bool $thumbnail
]]] )exif_read_data liest die EXIF-Header aus einer JPEG- oder TIFF-Bilddatei aus. Auf diese Weise kann man die Metadaten auslesen, die mit Digitalkameras erzeugt wurden. Exif-Header kommen normalerweise bei JPEG/TIFF-Bildern vor, die von Digitalkameras gemacht wurden. Leider hat jeder Kamerahersteller eine andere Vorstellung davon, wie man die Bilder beschreibt. Man kann sich also nicht darauf verlassen, das ein bestimmter Exif-Header vorhanden ist. Height und Width werden genauso wie getimagesize berechnet. Diese Werte dürfen also nicht Teil von irgendwelchen Headern sein, die zurückgegeben werden. Ferner ist html ein Höhen/Breiten-Textstring für den Gebrauch in normalem HTML. Wenn ein Exif-Header einen Copyrightvermerk beinhaltet, kann dieser selbst aus zwei Werten bestehen. Da die Lösung im Exif-2.10 -Standard nicht konsistent ist, liefert der COMPUTED-Bereich die beiden Einträge Copyright.Photographer und Copyright.Editor, während der IFD0-Bereich aus einem Byte-Array besteht, der die beiden Werte duch ein NULL-Zeichen trennt. Wenn der Datentyp falsch ist, ist nur der erste Eintrag vorhanden (normales Verhalten von Exif). COMPUTED beinhaltet auch ein Copyright-Eintrag. Dieser entspricht entweder dem originalen Copyright-String oder er besteht aus einer kommaseparierten Liste von Foto- und Herausgeber-Copyright. Der Tag UserComment besitzt das gleiche Problem, wie das Copyright-Tag. Er kann zwei Werte speichern. Als erstes die benutze Kodierung und als zweites den Wert selbst. Wenn dem so ist, enthält der IFD-Bereich die Kodierung oder ein Byte-Array. Der COMPUTED-Bereich speichert die beiden Einträge UserCommentEncoding und UserComment. Der Eintrag UserComment ist in beiden Fällen verfügbar. Er sollte also dem Eintrag im IFD0-Bereich vorgezogen werden. exif_read_data validiert auch EXIF-Datentags entsprechend der EXIF-Spezifikationen (» http://exif.org/Exif2-2.PDF, Seite 20).
Parameter-Liste
Rückgabewerte
Gibt ein assoziatives array zurück, bei dem der Arrayindex den
Headernamen entspricht und der Arraywert die Werte enthält, die mit diesen
Headern in Verbindung stehen. Wenn keine Daten zurückgeliefert werde können,
liefert exif_read_data Changelog
Beispiele
Beispiel #1 exif_read_data-Beispiel
<?phpDer erste Aufruf schlägt fehl, da das Bild keine Headerinformationen hat. Das oben gezeigte Beispiel erzeugt eine ähnliche Ausgabe wie: test1.jpg: Keine Headerdaten gefunden. test2.jpg: FILE.FileName: test2.jpg FILE.FileDateTime: 1017666176 FILE.FileSize: 1240 FILE.FileType: 2 FILE.SectionsFound: ANY_TAG, IFD0, THUMBNAIL, COMMENT COMPUTED.html: width="1" height="1" COMPUTED.Height: 1 COMPUTED.Width: 1 COMPUTED.IsColor: 1 COMPUTED.ByteOrderMotorola: 1 COMPUTED.UserComment: Exif test image. COMPUTED.UserCommentEncoding: ASCII COMPUTED.Copyright: Photo (c) M.Boerger, Edited by M.Boerger. COMPUTED.Copyright.Photographer: Photo (c) M.Boerger COMPUTED.Copyright.Editor: Edited by M.Boerger. IFD0.Copyright: Photo (c) M.Boerger IFD0.UserComment: ASCII THUMBNAIL.JPEGInterchangeFormat: 134 THUMBNAIL.JPEGInterchangeFormatLength: 523 COMMENT.0: Comment #1. COMMENT.1: Comment #2. COMMENT.2: Comment #3end THUMBNAIL.JPEGInterchangeFormat: 134 THUMBNAIL.Thumbnail.Height: 1 THUMBNAIL.Thumbnail.Height: 1 Siehe auch
|