getimagesize

getimagesize -- Retourne la taille d'une image

Description

array getimagesize ( string filename [, array imageinfo])

getimagesize( ) va déterminer la taille des images de type GIF , JPG , PNG , SWF , PSD ou BMP et en retourner les dimensions , le type d'image , et une chaîne type "height / width " , à placer dans une balise HTML ou IMG normale .

Si l' accès au fichier filename est impossible , ou si ce n'est pas un format d'image supporté , getimagesize( ) retournera FALSE et générera une alerte .

getimagesize( ) retourne un tableau de 4 éléments . L ' index 0 contient la largeur . L ' index 1 contient la longueur . L' index 2 contient le type de l 'image : 1 = GIF , 2 = JPG , 3 = PNG , 5 = PSD , 6 = BMP . L' index 3 contient la chaîne à placer dans les balises HTML : "height=xxx width=xxx " .

Exemple 1 . Exemple avec getimagesize( )

 
?php

 
$size

 
=

 
getimagesize(

 
"img

 
/

 
flag.jpg")

 
;

 
?




 
IMG

 
SRC="

 
img

 
/

 
flag.jpg

 
"

 
 ?php

 
echo

 
$size[3]

 
;

 
?





Exemple 2 . getimagesize( ) avec une URL

 
?php

 
$size

 
=

 
getimagesize(

 
"http

 
:

 
/

 
/www.php.net

 
/

 
gifs

 
/

 
logo.gif")

 
;

 
?





Avec les images JPEG , deux en-têtes supplémentaires sont retournés : channel et bits . channel vaudra 3 avec les images RGB , et 4 avec les images CMYK . bits est le nombre de bits de chaque couleur .

Si l' accès à filename est impossible , ou si ce n'est pas une image valide , getimagesize( ) retournera NULL et générera une alerte .

Le paramètre optionnel imageinfo permet d ' extraire des informations supplémentaires du fichier image . Actuellement , cette option va retourner différents marqueurs JPG APP dans un tableau associatif . Certains programmes utilisent ces marqueur APP pour préciser les informations dans les balises HTML . Un marqueur commun est le marqueur APP13 , décrit à http : / /www.iptc.org / . Vous pouvez utiliser la fonction iptcparse( ) pour analyser ce marqueur , et obtenir des informations intelligibles .

Exemple 3 . getimagesize( ) qui retourne IPTC

 
?php

 
$size

 
=

 
getimagesize(

 
"testimg.jpg"

 
,

 
$info)

 
;

 
if

 
(isset($info["APP13"])

 
)

 
{

 
$iptc

 
=

 
iptcparse($info["APP13"])

 
;

 
var_dump($iptc)

 
;

 
  }

 
?



Note : getimagesize() ne requiert pas la bibliothèque GD.

Le support URL a été ajouté en PHP 4.0.5 .