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를 사용하여 이미지 파일 크기를 일괄 압축하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!