<?php
if(isset($_POST['upload'])){
// Getting file name
$filename = $_FILES['imagefile']['name'];
// Valid extension
$valid_ext = array('png','jpeg','jpg');
// Location
$location = "images/".$filename;
// file extension
$file_extension = pathinfo($location, PATHINFO_EXTENSION);
$file_extension = strtolower($file_extension);
// Check extension
if(in_array($file_extension,$valid_ext)){
// Compress Image
compressImage($_FILES['imagefile']['tmp_name'],$location,60);
}else{
echo "Invalid file type.";
}
}
// Compress image
function compressImage($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);
}
?>25 KB lik resmi bu şekilde yüklediğimde 31 KB olarak yüklüyor. Bu resim boyutunu azaltabileceğimiz bir önerisi olan var mıdır?
PHP Resmi Compress Ettiğimde Dosya boyutu büyüyor?
4
●86
- 13-06-2022, 20:06:56Selamlar,
- 13-06-2022, 20:18:32anlamadım hocam comment satırı ne gibi bir fayda sağlayacak?Onur89TR adlı üyeden alıntı: mesajı görüntüle
- 13-06-2022, 20:22:18algoritmik adlı üyeden alıntı: mesajı görüntüle
<?php if(isset($_POST['upload'])){ // Getting file name $filename = $_FILES['imagefile']['name']; // Valid extension $valid_ext = array('png','jpeg','jpg'); // Location $location = "images/".$filename; // file extension $file_extension = pathinfo($location, PATHINFO_EXTENSION); $file_extension = strtolower($file_extension); // Check extension if(in_array($file_extension,$valid_ext)){ // Compress Image compressImage($_FILES['imagefile']['tmp_name'],$location,60); }else{ echo "Invalid file type."; } } // Compress image function compressImage($source, $destination, $quality) { $quality = 60; $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); } ?>Bu olmazsa:
<?php if(isset($_POST['upload'])){ // Getting file name $filename = $_FILES['imagefile']['name']; // Valid extension $valid_ext = array('png','jpeg','jpg'); // Location $location = "images/".$filename; // file extension $file_extension = pathinfo($location, PATHINFO_EXTENSION); $file_extension = strtolower($file_extension); // Check extension if(in_array($file_extension,$valid_ext)){ // Compress Image compressImage($_FILES['imagefile']['tmp_name'],$location,60); }else{ echo "Invalid file type."; } } // Compress image function compressImage($source, $destination, $quality) { $quality: 0.6; $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); } ?> - 13-06-2022, 20:34:54Yukardaki olmadı zaten olması mantıksız olurdu quality 60 gönderiyoruz dışarıdan. 0,6 çalışıyor fakat 0,6 60 demek değil resmi görünmez hale getiriyor. Kullanışlı değil yani. Resmi yok ediyor bildiğin 0.6Onur89TR adlı üyeden alıntı: mesajı görüntüle