function compress($source, $destination, $quality) {
$info = getimagesize($source);
if ($info['mime'] == 'image/jpeg')
$image = imagecreatefromjpeg($source);
elseif ($info['mime'] == 'image/gif')
$image = imagecreatefromgif($source);
elseif ($info['mime'] == 'image/png')
$image = imagecreatefrompng($source);
imagejpeg($image, $destination, $quality);
return $destination;
}
$source_img = 'source.jpg';
$destination_img = 'destination .jpg';
$d = compress($source_img, $destination_img, 90);*stackoverflow dan alıntı
bu fonksiyon bir nebze çözüm olur ama gerçek anlamda performans için CDN kullanman şart
$d = compress($source_img, $destination_img, 90);
90 resim kalitesi bunu düşürerek boyutu daha da küçültebilirsin en uygununu deneme yanılma ile bulabilirsin
kalite isteğe bağlı olup 0'dan (en kötü kalite, en küçük dosya) 100'e (en yüksek kalite, en büyük dosya) kadar bir değer belirtilebilir. Öntanımlı değer, öntanımlı IJG kalite değeridir (yaklaşık 75).