Podrías usar una función .. así lo llamas como necesites. Lo importante es "destruir" el recurso de imagen usado en cada llamada a tu función (imagedestroy())
Código PHP:
<?php
function genera_thumb($imagen_path_original,$imagen_path_final,$ancho_thumb,$alto_thumb,$calidad=90){
$img_archivo = imagecreatefromjpeg($imagen_path_original);
$img = imagecreatetruecolor($ancho_thumb,$alto_thumb);
$ancho = imagesx($imagen_path_original);
$alto = imagesy($imagen_path_original);
imagecopyresampled($img,$img_archivo,0,0,0,0,$ancho_thumb,$alto_thumb,$ancho,$alto);
// Generar imagen
imagejpeg($img,$imagen_path_final,$calidad);
// y nos deshacemos del recurso de imagen trabajado.
imagedestroy($img);
}
// Genera imagen 1
genera_thumb("original1.jpg","thumbs/pequenos/thumb_original1.jpg",50,50);
// Genera imagen 2
genera_thumb("original1.jpg","thumbs/medianos/thumb_original1.jpg",100,100);
?>
PD; Por cierto en PHP.net (funciones GD) en los comentarios de los usuarios tienes muchas funciones ya implementadas al respecto .. algunas realmente buenas.
www.php.net/gd
Un saludo,