如何使用PHP批量压缩图片文件大小
简介:随着互联网的发展,图片在我们的日常生活中越来越常见。然而,大大小小的图片文件也带来了存储和传输的问题。为了减少图片文件的大小,提高网站的加载速度,我们可以使用PHP来批量压缩图片文件大小。本文将介绍如何使用PHP进行批量压缩图片文件大小,并提供相关的代码示例。
步骤:
$directory = 'images/';
$fileList = glob($directory . '*.{jpg,jpeg,png,gif}', GLOB_BRACE);
登录后复制
$targetWidth = 200; // 目标宽度
$targetQuality = 80; // 目标质量
登录后复制
foreach($fileList as $file) {
$imageInfo = getimagesize($file);
$sourceWidth = $imageInfo[0]; // 原始宽度
$sourceHeight = $imageInfo[1]; // 原始高度
$sourceImage = imagecreatefromjpeg($file); // 根据文件类型选择对应的函数
$targetHeight = round($sourceHeight * $targetWidth / $sourceWidth); // 计算目标高度
$targetImage = imagecreatetruecolor($targetWidth, $targetHeight); // 创建目标图像
imagecopyresampled($targetImage, $sourceImage, 0, 0, 0, 0, $targetWidth, $targetHeight, $sourceWidth, $sourceHeight); // 图像复制和缩放
imagejpeg($targetImage, $file, $targetQuality); // 保存压缩后的图片
imagedestroy($sourceImage); // 释放资源
imagedestroy($targetImage);
}
登录后复制
$directory = 'images/';
$fileList = glob($directory . '*.{jpg,jpeg,png,gif}', GLOB_BRACE);
$targetWidth = 200; // 目标宽度
$targetQuality = 80; // 目标质量
foreach($fileList as $file) {
$imageInfo = getimagesize($file);
$sourceWidth = $imageInfo[0]; // 原始宽度
$sourceHeight = $imageInfo[1]; // 原始高度
$sourceImage = imagecreatefromjpeg($file); // 根据文件类型选择对应的函数
$targetHeight = round($sourceHeight * $targetWidth / $sourceWidth); // 计算目标高度
$targetImage = imagecreatetruecolor($targetWidth, $targetHeight); // 创建目标图像
imagecopyresampled($targetImage, $sourceImage, 0, 0, 0, 0, $targetWidth, $targetHeight, $sourceWidth, $sourceHeight); // 图像复制和缩放
imagejpeg($targetImage, $file, $targetQuality); // 保存压缩后的图片
imagedestroy($sourceImage); // 释放资源
imagedestroy($targetImage);
}
登录后复制
总结:通过使用PHP批量压缩图片文件大小,我们可以有效地减小图片文件的大小,提升网站的加载速度。本文提供了一个简单的方法和相应的代码示例,但需要根据实际情况进行调整和扩展。希望本文可以帮助您更好地处理和优化图片文件。
以上就是如何使用PHP批量压缩图片文件大小的详细内容,更多请关注每日运维网(www.mryunwei.com)其它相关文章!