php save image

Nel caso volessimo salvare un’immagine sul nostro server a partire da una URL, possiamo servirci delle librerie GD e di uno script che esegue l’operazione in modo che, il processo, possa essere automatizzato.

Consiglio della nonna: non fate scraping e non prendete immagini da siti altrui se non volete incappare in problemi legali. Esistono diversi siti come pixabay dove poter reperire immagini di qualità gratuite.

Se, ad esempio, ripubblichiamo abstract di notizie sul nostro sito, perchè la licenza con cui sono rilasciate ce lo permette, possiamo avere la necessità di visualizzare anche una thumbnail. Ed ecco, quindi, una funzione in PHP con cui salvare le immagini:

 
function saveImageFromUrl($url = NULL, $path = NULL, $newName = "example", $quality = 100) {
 
    $file = pathinfo($url);
 
    $ext = strtolower($file['extension']);
 
    if ($ext=="jpg") {
 
        $image = imagecreatefromjpeg($url);
 
        imagejpeg($image, $path .$newName ."." .$ext, $quality);
 
    }
    else if ($ext=="png") {
 
        $image = imagecreatefrompng($url);
 
        imagealphablending($image, true);
        imagesavealpha($image, true);
 
        imagepng($image, $path .$newName ."." .$ext, 9);
 
    }
    else if ($ext=="gif") {
 
        $image = imagecreatefromgif($url);
 
        imagegif($image, $path .$newName ."." .$ext);
 
    }
 
}

Per richiamare la funzione:

 
saveImageFromUrl("http://example_image.jpg", "/path/image/", "name_image", 100);

NO SPAM. Non fornirò la tua email a terzi e riceverai solo contenuti che ti interessano sugli argomenti che tratto e potrai cancellarti quando vuoi con un link che trovi in tutte le email.