PHP: Informazioni sulle immagini, la funzione getimagesize().
mar 13
PHP da buon linguaggio fortemente orientato al web offre numerose funzioni per la manipolazione delle immagini, le ultime versioni sono già comprensive delle librerie GD, potenti nel ridimensionamento, traformazione ecc.
Ma tra le funzioni del core di php ce n'è una che spessissimo uso e trovo sia veramente molto comoda, è la funzione getimagesize().
Vediamola nel dettaglio:
array getimagesize ( string $filename [, array &$imageinfo ] )
Il primo parametro $filename è una stringa che contiene il nome del file di cui vogliamo raccogliere le informazioni, comprensivo di percorso.
Il secondo parametro opzionale $imageinfo è un array nella quale verranno inseriti alcuni parametri aggiuntivi contenuti nell'immagine, come ad esempio i markers JPEG APP, spesso al loro interno si inseriscono le informazioni IPTC, personalmente lo uso pochissimo.
La funzione ritorna un array con 5 elementi:
- l'indice 0 contiene la larghezza dell'immagine in pixels
- l'indice 1 contiene l'altezzo dell'immagine in pixels
- l'indice 2 contiene una delle costanti IMAGETYPE_XXX che definiscono il tipo di immagine
- l'indice 3 contiene una stringa con i parametri height="yyy" width="xxx" utilizzabile in un tag HMTL IMG
- l'indice mime contiene il MIME TYPE dell' immagine
- nelle ultime versioni per alcuni tipi di immagine ci sono anche bits e channels
vediamo un esempio pratico e semplice per l'immagine in allegato.
$imgdetails = getimagesize("php-logo.jpg"); print_r($imgdetails);
e il risultato sarà
Array ( [0] => 300 [1] => 158 [2] => 2 [3] => width="300" height="158" [bits] => 8 [channels] => 3 [mime] => image/jpeg )
Happy PHP!