เมื่อเราคัดลอกภาพขึ้นโฮสต์แล้วหากจะนำมาแสดงด้วยขนาดต้นฉบับนั้นอาจต้องใช้เวลานานสำหรับเน็ตแบบ 56 k จึงจะเป็นต้องสร้างภาพที่มีขนาดเล็กลงซึ่งสามารถทำได้ด้วยโค้ด PHP ดังนี้
if($_FILES['file']['tmp_name'] != "") //เช็คว่ามีการอัปรูป
{
copy($_FILES['file']['tmp_name'], $_FILES['file']['name']); //ทำการ copy รูป
$images = $_FILES['file']['name']; $height = 400; //กำหนดขนาดความสูง
$size = getimagesize($images);
$width = round($height*$size[0]/$size[1]); //ขนาดความกว้่างคำนวนเพื่อความสมส่วนของรูป
if($size[2] == 1) {$images_orig = imagecreatefromgif($images); //resize รูปประเภท GIF
} else if($size[2] == 2) {
$images_orig = imagecreatefromjpeg($images); //resize รูปประเภท JPEG
}$photoX = imagesx($images_orig);
$photoY = imagesy($images_orig);
$images_fin = imagecreatetruecolor($width, $height);
imagecopyresampled($images_fin, $images_orig, 0, 0, 0, 0, $width+1, $height+1, $photoX, $photoY); imagejpeg($images_fin, $images); //ชื่อไฟล์ใหม่ imagedestroy($images_orig);imagedestroy($images_fin);
}
หวังว่าจะเป็นประโยชน์บ้างนะครับ