I would like to compress image file uploaded by users. However, the size of the image file after imagejpeg is the same size before imagejpeg.
Could you tell me why?
function compressImage($files_picture){
$file_type = $files_picture['type']; // image/jpeg
$original_picture_info =getimagesize($files_picture['tmp_name']);
$original_picture_width = $original_picture_info[0];
$original_picture_height = $original_picture_info[1];
$new_picture_width = 400;
$new_picture_height = 400;
$canvas = imagecreatetruecolor($new_picture_width, $new_picture_height);
if($file_type == 'image/jpeg'){
$original_image = imagecreatefromjpeg($files_picture['tmp_name']);
imagecopyresampled($canvas, $original_image, 0,0,0,0, $new_picture_width, $new_picture_height, $original_picture_width, $original_picture_height);
imagedestroy($original_image);
imagejpeg($canvas, $files_picture['tmp_name'], 30);
}elseif($file_type == 'image/png'){
$original_image = imagecreatefrompng($files_picture['tmp_name']);
imagecopyresampled($canvas, $original_image, 0,0,0,0, $new_picture_width, $new_picture_height, $original_picture_width, $original_picture_height);
imagedestroy($original_image);
imagepng($canvas, $files_picture['tmp_name'], 30);
}elseif($file_type == 'imagegif'){
$original_image = imagecreatefromgif($files_picture['tmp_name']);
imagecopyresampled($canvas, $original_image, 0,0,0,0, $new_picture_width, $new_picture_height, $original_picture_width, $original_picture_height);
imagedestroy($original_image);
imagegif($canvas, $files_picture['tmp_name'], 30);
}
imagedestroy($canvas);
return $files_picture;
}