如何在 php 中减小图像大小?

我正在使用 PHP 文件作为 API 将照片上传到我的应用程序,但上传的图像尺寸很大我需要减小图像尺寸但要保持良好的质量


我正在使用此代码上传照片


$imagearray =  json_decode($_POST['img']);


 foreach($imagearray as $value){


    $data = explode(',', $value);


    $imagedata = base64_decode($data[1]);


    $nam =  genRandomString().'.jpeg';


    $target_path='../uploads/'.$nam;


    file_put_contents($target_path,$imagedata);


    if($imgsname=="")


    {


    $imgsname=$nam;


    $imgname=$nam;


    }


    else


    {


    $imgsname=$imgsname.','.$nam;


    }

}


侃侃无极
浏览 88回答 1
1回答

宝慕林4294392

如果您希望使用编码本身来减小大小,您可以在 php.ini 中遵循此代码。<?phpfunction 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);?>$d = compress($source_img, $destination_img, 90);这只是一个 php 函数,它传递源图像(即$source_img)、目标图像($destination_img)和将要压缩的图像的质量(即 90)。$info = getimagesize($source);该getimagesize()函数用于查找任何给定图像文件的大小,并返回尺寸和文件类型。
打开App,查看更多内容
随时随地看视频慕课网APP