PHPを使用してjpg画像(http://pepeliana.com/images/DSC4008.jpg)からiptcメタデータを取得しようとしています。参照画像の Title メタデータは「Testing」に設定されています。私はphpマニュアルと、仕事をしているように見える両方の関数-iptcparse()とexif_read_data()を調べました。どちらの機能もphpで有効になっています。しかし、私の人生では、両方の関数が目的のデータを返さない理由がわかりません。これは私が試したサンプルコードであり、タイトルiptcメタデータを持ついくつかの画像でもこのコードを試したことに言及する必要があります(したがって、破損した画像や不適切に設定されたメタデータの可能性を排除します):
<?php
$size = getimagesize ('DSC4008.jpg', $info);
if(is_array($info)) {
$iptc = iptcparse($info["APP13"]);
foreach (array_keys($iptc) as $s) {
$c = count ($iptc[$s]);
for ($i=0; $i <$c; $i++)
{
echo $s.' = '.$iptc[$s][$i].'<br>';
}
}
}
?>
また:
<?php
$exif = exif_read_data('DSC4008.jpg', 0, true);
echo $exif['WINXP']['Title'];
?>
ご覧のとおり、これは非常に単純ですが、どちらも必要なものを返すことができません。明らかに単純なものが欠けているに違いありません。助けてください!