par
AB » 15 déc. 2007, 19:25
Une autre solution (PHP5) un peu plus lourde, mais aussi plus propre dans la mesure où l'extension ne révelle en rien le véritable type du fichier (elle donne juste au système l'info sur le logiciel à utiliser), il te faut utiliser la fonction getimagesize() qui te retourne la taille de l'image mais également son type, puis utiliser image_type_to_extension() pour obtenir l'extension associée.
Rien à dire sur le principe. Juste pour dire que getimagesize() est disponible depuis PHP4. En récupérant l'index 2 du tableau de getimagesize() on devrait pouvoir se passer de image_type_to_extension() (disponible depuis php5) sachant que les valeurs retournées correspondent à
$types = array(
1 => 'GIF',
2 => 'JPG',
3 => 'PNG',
4 => 'SWF',
5 => 'PSD',
6 => 'BMP',
7 => 'TIFF(intel byte order)',
8 => 'TIFF(motorola byte order)',
9 => 'JPC',
10 => 'JP2',
11 => 'JPX',
12 => 'JB2',
13 => 'SWC',
14 => 'IFF',
15 => 'WBMP',
16 => 'XBM'
);
Pour ceux qui n'ont pas encore php5...
[quote="Ryle"]
Une autre solution (PHP5) un peu plus lourde, mais aussi plus propre dans la mesure où l'extension ne révelle en rien le véritable type du fichier (elle donne juste au système l'info sur le logiciel à utiliser), il te faut utiliser la fonction getimagesize() qui te retourne la taille de l'image mais également son type, puis utiliser image_type_to_extension() pour obtenir l'extension associée.[/quote]
Rien à dire sur le principe. Juste pour dire que getimagesize() est disponible depuis PHP4. En récupérant l'index 2 du tableau de getimagesize() on devrait pouvoir se passer de image_type_to_extension() (disponible depuis php5) sachant que les valeurs retournées correspondent à
[php] $types = array(
1 => 'GIF',
2 => 'JPG',
3 => 'PNG',
4 => 'SWF',
5 => 'PSD',
6 => 'BMP',
7 => 'TIFF(intel byte order)',
8 => 'TIFF(motorola byte order)',
9 => 'JPC',
10 => 'JP2',
11 => 'JPX',
12 => 'JB2',
13 => 'SWC',
14 => 'IFF',
15 => 'WBMP',
16 => 'XBM'
);
[/php]
Pour ceux qui n'ont pas encore php5...