<?php
// 图片压缩示例代码
function compressImage($source, $destination, $quality) {
// 获取图片信息
$info = getimagesize($source);
if ($info === false) {
return false;
}
// 根据图片类型创建相应的图像资源
$image = null;
switch ($info['mime']) {
case 'image/jpeg':
$image = imagecreatefromjpeg($source);
break;
case 'image/png':
$image = imagecreatefrompng($source);
break;
case 'image/gif':
$image = imagecreatefromgif($source);
break;
default:
return false;
}
// 压缩并保存图片
if ($image !== null) {
imagejpeg($image, $destination, $quality); // 仅支持JPEG格式输出,可根据需要调整
imagedestroy($image);
return true;
}
return false;
}
// 示例用法
$source_image = 'path/to/source/image.jpg';
$destination_image = 'path/to/destination/image.jpg';
$compression_quality = 80; // 质量范围:0(最差)到100(最佳)
if (compressImage($source_image, $destination_image, $compression_quality)) {
echo "图片压缩成功";
} else {
echo "图片压缩失败";
}
?>
compressImage
函数:该函数接收三个参数:源图片路径、目标图片路径和压缩质量。getimagesize
函数获取图片的 MIME 类型等信息。imagecreatefromjpeg
, imagecreatefrompng
, imagecreatefromgif
) 创建图像资源。imagejpeg
函数将图像保存为 JPEG 格式,并指定压缩质量。可以根据需要调整输出格式。imagedestroy
函数释放图像资源。compressImage
函数的示例代码。上一篇:php计算两个日期之间的天数
下一篇:php gd库
Laravel PHP 深圳智简公司。版权所有©2023-2043 LaravelPHP 粤ICP备2021048745号-3
Laravel 中文站