Mit der folgenden Funktion können Sie die IPTC-Daten eines Bildes mit PHP auslesen.
Die Funktion beinhaltet nicht alle Informationen, nur die für mich Wichtigen. Natürlich können Sie diese Funktion an ihre Bedürfnisse erweitern.
Einstieg in PHP 7 und MySQL!
function getImageInformations($strFilename) { $arrSize = getimagesize($strFilename, $arrInfo); $arrIPTC = iptcparse($arrInfo['APP13']); $arrReturn = array(); if (is_array($arrIPTC)) { $arrReturn['title'] = $arrIPTC['2#105'][0]; $arrReturn['documentTitle'] = $arrIPTC['2#005'][0]; $arrReturn['description'] = $arrIPTC['2#120'][0]; $arrReturn['descriptionAuthor'] = $arrIPTC['2#122'][0]; $arrReturn['author'] = $arrIPTC['2#080'][0]; $arrReturn['authorTitle'] = $arrIPTC['2#085'][0]; $arrReturn['documentTitle'] = $arrIPTC['2#005'][0]; $arrReturn['copyright'] = $arrIPTC['2#116'][0]; $arrReturn['keywords'] = $arrIPTC['2#025'][0]; $arrReturn['category'] = $arrIPTC['2#015'][0]; $arrReturn['city'] = $arrIPTC['2#090'][0]; $arrReturn['state'] = $arrIPTC['2#095'][0]; $arrReturn['country'] = $arrIPTC['2#101'][0]; $arrReturn['instruction'] = $arrIPTC['2#040'][0]; $arrReturn['creationTime'] = substr($arrIPTC['2#055'][0], 6, 2) . '.' . substr($arrIPTC['2#055'][0], 4, 2) . '.' . substr($arrIPTC['2#055'][0], 0, 4); } return $arrReturn; } print_r(getImageInformations('bild.jpg')); function getImageInformations($strFilename) { $arrSize = getimagesize($strFilename, $arrInfo); $arrIPTC = iptcparse($arrInfo['APP13']); $arrReturn = array(); if (is_array($arrIPTC)) { $arrReturn['title'] = $arrIPTC['2#105'][0]; $arrReturn['documentTitle'] = $arrIPTC['2#005'][0]; $arrReturn['description'] = $arrIPTC['2#120'][0]; $arrReturn['descriptionAuthor'] = $arrIPTC['2#122'][0]; $arrReturn['author'] = $arrIPTC['2#080'][0]; $arrReturn['authorTitle'] = $arrIPTC['2#085'][0]; $arrReturn['documentTitle'] = $arrIPTC['2#005'][0]; $arrReturn['copyright'] = $arrIPTC['2#116'][0]; $arrReturn['keywords'] = $arrIPTC['2#025'][0]; $arrReturn['category'] = $arrIPTC['2#015'][0]; $arrReturn['city'] = $arrIPTC['2#090'][0]; $arrReturn['state'] = $arrIPTC['2#095'][0]; $arrReturn['country'] = $arrIPTC['2#101'][0]; $arrReturn['instruction'] = $arrIPTC['2#040'][0]; $arrReturn['creationTime'] = substr($arrIPTC['2#055'][0], 6, 2) . '.' . substr($arrIPTC['2#055'][0], 4, 2) . '.' . substr($arrIPTC['2#055'][0], 0, 4); } return $arrReturn; } print_r(getImageInformations('4.jpg'));
Leider wird bei mir für mein Foto nur der Wert „Array ( )“ ausgegeben, ohne weitere Informationen. An was könnte es liegen, dass ich keine Informationen zum Foto erhalte.