Avec l'extension EXIF, vous pouvez travailler avec les meta-données des
images. Par exemple, vous pouvez utiliser les fonctions EXIF pour lire les
meta-données d'une image prise avec un appareil photographique numérique,
et placées dans les en-têtes des images
JPEG et TIFF.
PHP doit être compilé avec l'option --enable-exif.
PHP n'a pas besoin de bibliothèque supplémentaire pour faire
fonctionner cette extension. Les utilisateurs Windows doivent aussi
avoir activé l'extension mbstring.
Pour activer le support EXIF en PHP, il suffit d'ajouter l'option
de compilation --enable-exif.
Les utilisateurs Windows doivent s'assurer que les bibliothèques DLL
php_mbstring.dll et php_exif.dll sont
spécifiées dans le fichier php.ini. La bibliothèque
php_mbstring.dll doit être chargée
avant la bibliothèque php_exif.dll :
pensez à ajuster votre php.ini.
Le comportement de ces fonctions est
affecté par la configuration dans le fichier php.ini.
EXIF supporte automatiquement la conversion depuis Unicode
et JIS, lorsque le module mbstring
est compilé avec PHP. Cela se fait en décodant le commentaire avec
le jeu de caractères spécifié. Le résultat est ensuite codé avec
un autre jeu de caractères, compatible avec la sortie
HTTP.
Tableau 1. Options de configuration
Nom
Par défaut
Modifiable
Historique
exif.encode_unicode
"ISO-8859-15"
PHP_INI_ALL
Disponible depuis PHP 4.3.0.
exif.decode_unicode_motorola
"UCS-2BE"
PHP_INI_ALL
Disponible depuis PHP 4.3.0.
exif.decode_unicode_intel
"UCS-2LE"
PHP_INI_ALL
Disponible depuis PHP 4.3.0.
exif.encode_jis
""
PHP_INI_ALL
Disponible depuis PHP 4.3.0.
exif.decode_jis_motorola
"JIS"
PHP_INI_ALL
Disponible depuis PHP 4.3.0.
exif.decode_jis_intel
"JIS"
PHP_INI_ALL
Disponible depuis PHP 4.3.0.
Pour plus de détails sur les constantes PHP_INI_*,
reportez-vous à Annexe G.
Voici un éclaircissement sur
l'utilisation des directives de configuration.
exif.encode_unicode définit la
méthode de gestion des commentaires écrits en Unicode.
La valeur par défaut est ISO-8859-15,
qui devrait fonctionner dans tous les pays non-asiatiques.
Cette directive peut être laissée vide, ou prendre un
des jeux de caractères supporté par mbstring. Si elle
est vide, le jeu de caractères interne de mbstring sera
utilisé.
exif.decode_unicode_motorola définit
le jeu de caractères de remplacement pour les commentaires
utilisateurs écrits en Unicode, si l'ordre des bits
est celui de Motorola (big-endian). Cette directive ne
peut être laissée vide, et doit être un des jeux de
caractères supportés par l'extension mbstring. La valeur
par défaut est UCS-2BE.
exif.decode_unicode_intel définit
le jeu de caractères de remplacement pour les commentaires
utilisateurs écrits en Unicode, si l'ordre des bits
est celui de Intel (little-endian). Cette directive ne
peut être laissée vide, et doit être un des jeux de
caractères supportés par l'extension mbstring. La valeur
par défaut est UCS-2LE.
exif.encode_jis définit la méthode
de gestion des commentaires écrits en caractères JIS.
La valeur par défaut est une chaîne vide, qui fait
que le jeu de caractères interne de mbstring est utilisé.
exif.decode_jis_motorola définit
le jeu de caractères de remplacement pour les commentaires
utilisateurs écrits en JIS, si l'ordre des bits
est celui de Motorola (big-endian). Cette directive ne
peut être laissée vide, et doit être un des jeux de
caractères supportés par l'extension mbstring. La valeur
par défaut est JIS.
exif.decode_jis_intel définit
le jeu de caractères de remplacement pour les commentaires
utilisateurs écrits en JIS, si l'ordre des bits
est celui de Intel (little-endian). Cette directive ne
peut être laissée vide, et doit être un des jeux de
caractères supportés par l'extension mbstring. La valeur
par défaut est JIS.
Ces constantes sont définies par cette
extension, et ne sont disponibles que si cette extension a été compilée avec
PHP, ou bien chargée au moment de l'exécution.