PHP - Exif-Infos eines JPG-Bildes auslesen

Auf diese Weise kann man die Metadaten auslesen, die mit Digitalkameras erzeugt 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.


<?php

// Exif-Infos eines JPG-Bildes auslesen

$bild "garten.jpg";
if (
exif_read_data($bild'IFD0')) {
 
$exif exif_read_data($bild0true);
 foreach (
$exif as $key => $section) {
  foreach (
$section as $name => $val) {
   echo 
"$key.$name$val<br>\n";
  }
 }
}
?>
FILE.FileName: garten.jpg
FILE.FileDateTime: 1593256787
FILE.FileSize: 110597
FILE.FileType: 2
FILE.MimeType: image/jpeg
FILE.SectionsFound: ANY_TAG, IFD0, THUMBNAIL, EXIF, INTEROP, MAKERNOTE
COMPUTED.html: width="270" height="395"
COMPUTED.Height: 395
COMPUTED.Width: 270
COMPUTED.IsColor: 1
COMPUTED.ByteOrderMotorola: 1
COMPUTED.CCDWidth: 7mm
COMPUTED.ApertureFNumber: f/2.8
COMPUTED.Copyright:
IFD0.Make: FUJIFILM
IFD0.Model: FinePix F31fd
IFD0.XResolution: 72/1
IFD0.YResolution: 72/1
IFD0.ResolutionUnit: 2
IFD0.Software: Paint.NET v3.5.10
IFD0.DateTime: 2007:08:04 08:35:22
IFD0.YCbCrPositioning: 2
IFD0.Copyright:
IFD0.Exif_IFD_Pointer: 232
IFD0.UndefinedTag:0xC4A5: PrintIM0250
THUMBNAIL.XResolution: 1/96
THUMBNAIL.YResolution: 1/96
THUMBNAIL.ResolutionUnit: 2
EXIF.ExposureTime: 10/2000
EXIF.FNumber: 280/100
EXIF.ExposureProgram: 2
EXIF.ISOSpeedRatings: 200
EXIF.ExifVersion: 0220
EXIF.DateTimeOriginal: 2007:08:04 08:35:22
EXIF.DateTimeDigitized: 2007:08:04 08:35:22
EXIF.ComponentsConfiguration: 
EXIF.CompressedBitsPerPixel: 20/10
EXIF.ShutterSpeedValue: 764/100
EXIF.ApertureValue: 300/100
EXIF.BrightnessValue: 443/100
EXIF.ExposureBiasValue: 0/100
EXIF.MaxApertureValue: 300/100
EXIF.MeteringMode: 5
EXIF.LightSource: 0
EXIF.Flash: 24
EXIF.FocalLength: 800/100
EXIF.MakerNote: FUJIFILM
EXIF.FlashPixVersion: 0100
EXIF.ColorSpace: 1
EXIF.ExifImageWidth: 2048
EXIF.ExifImageLength: 1536
EXIF.InteroperabilityOffset: 1208
EXIF.FocalPlaneXResolution: 2662/1
EXIF.FocalPlaneYResolution: 2662/1
EXIF.FocalPlaneResolutionUnit: 3
EXIF.SensingMethod: 2
EXIF.FileSource: 
EXIF.SceneType: 
EXIF.CustomRendered: 0
EXIF.ExposureMode: 0
EXIF.WhiteBalance: 0
EXIF.SceneCaptureType: 0
EXIF.Sharpness: 0
EXIF.SubjectDistanceRange: 0
EXIF.UndefinedTag:0xEA1D: 0
INTEROP.InterOperabilityIndex: R98
INTEROP.InterOperabilityVersion: 0100
MAKERNOTE.Version: 0130
MAKERNOTE.UndefinedTag:0x0010: FC A2257044 592D3132373207051191133022E030
MAKERNOTE.Quality:
MAKERNOTE.Sharpness: 3
MAKERNOTE.WhiteBalance: 0
MAKERNOTE.Color: 0
MAKERNOTE.FlashMode: 0
MAKERNOTE.FlashStrength: 16777216/1280
MAKERNOTE.Macro: 0
MAKERNOTE.FocusMode: 0
MAKERNOTE.UndefinedTag:0x1022: 1
MAKERNOTE.UndefinedTag:0x1023: Array
MAKERNOTE.SlowSync: 0
MAKERNOTE.PictureMode: 0
MAKERNOTE.UndefinedTag:0x1032: 1
MAKERNOTE.ContTake: 0
MAKERNOTE.UndefinedTag:0x1101: 0
MAKERNOTE.UndefinedTag:0x1200: 0
MAKERNOTE.UndefinedTag:0x1210: 0
MAKERNOTE.BlurWarning: 0
MAKERNOTE.FocusWarning: 0
MAKERNOTE.AEWarning : 0
MAKERNOTE.UndefinedTag:0x1303: 0
MAKERNOTE.UndefinedTag:0x1400: 1
MAKERNOTE.UndefinedTag:0x1408: 0100
MAKERNOTE.UndefinedTag:0x1409: 0100
MAKERNOTE.UndefinedTag:0x140A: 0
MAKERNOTE.UndefinedTag:0x4100: 0
garten.jpg

Bausteine

Eine zufällige Auswahl von Bausteinen (Snippets) aus den Bereichen CSS, PHP, JavaScript und MySQL.

CSS - Navigation mit :target auf und zumachen

PHP - Datei mit der höchsten Nummer in einem Verzeichnis ermitteln

JavaScript - Wörter in einer Zeichenkette zählen

MySQL - Datensätze (Gehalt) zwischen 2000 und 3000 anzeigen