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.
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.