Plusieurs formats d'images peuvent contenir des meta données. Entre autres, on a IPTC et Exif

J'ai déjà parlé de ceux ci dans un post sur Xnview et Flickr

Pour EXIF, on a PECL::Exif et pour IPTC on utilisera GD:iptcparse ou Pear::Image_IPTC

Deux petits exemples.

EXIF

<?php
echo "test1.jpg:<br />\n";
$exif = exif_read_data('tests/test1.jpg', 'IFD0');
echo $exif===false ? "Aucun en-tête de donnés n'a été trouvé.<br />\n" : "L'image contient des en-têtes<br />\n";
 
$exif = exif_read_data('tests/test2.jpg', 0, true);
echo "test2.jpg:<br />\n";
foreach ($exif as $key => $section) {
   foreach ($section as $name => $val) {
       echo "$key.$name: $val<br />\n";
   }
}
?>

IPTC

[php]
<?php
$size = getimagesize('./test.jpg', $info);
if(isset($info['APP13']))
{
    $iptc = iptcparse($info['APP13']);
    var_dump($iptc);
}
?>

Bonus : exifTool, rien à voir avec php mais toujours bon à connaitre.