ciao,
questa è la funzione che uso per ridimensionare le immagini:
Codice PHP:
function crea_immagine ($file_upload,$path,$dest_temporanea,$larghezza_massima,$dest_finale)
{
if ( $_FILES[$file_upload]['type'] == "image/gif") { $compressione = 85; $ext=gif; $funzione="imagecreatefromgif"; $funzione2="imagegif";}
if ( $_FILES[$file_upload]['type'] == "image/x-png") { $compressione = 9; $ext=png; $funzione="imagecreatefrompng"; $funzione2="imagepng";}
if ( $_FILES[$file_upload]['type'] == "image/pjpeg") { $compressione = 85; $ext=jpg; $funzione="imagecreatefromjpeg"; $funzione2="imagejpeg";}
$nome_temp=date ("ymdhi");
move_uploaded_file($_FILES[$file_upload]['tmp_name'],"$path/$dest_temporanea/$nome_temp.$ext") or die ("Non pubblica $_FILES[$file_upload]['tmp_name']") ;
$imagesize=GetImageSize("$path/$dest_temporanea/$nome_temp.$ext");
if ( $imagesize[0] > $larghezza_massima )
{ $larghezza_finale = $larghezza_massima; $altezza_finale = $imagesize[1]/($imagesize[0]/$larghezza_massima); } else { $larghezza_finale = $imagesize[0]; $altezza_finale= $imagesize[1];}
$dest_finale = "$path/$dest_finale.$ext";
$thumb = imageCreateTrueColor ($larghezza_finale, $altezza_finale) or die("Impossibile creare l immagine");
$src = $funzione("$path/$dest_temporanea/$nome_temp.$ext") or die ("Impossibile aprire l'immagine originale");
imagecopyresampled ($thumb, $src, 0, 0, 0, 0, $larghezza_finale, $altezza_finale, imageSx($src), imageSy($src)) or die("Impossibile ridimensionare l'immagine");
$funzione2($thumb, $dest_finale, $compressione) or die("Impossibile salvare l immagine");
unlink ("$path/$dest_temporanea/$nome_temp.$ext");
}
Tutto funziona correttamente, quindi no problem.
Ho pero' bisogno di portare fuori anche il valore della variabile $ext,
Ho provato a mettere return $ext;
Ma non funziona, non prende niente se scrivo echo $ext; nella pagina dove uso la funzione.
E non posso fare cosi:
$ext= crea_immagine (**parametri);
perchè mi andrebbe a ricreare anche l' immagine, come faccio??