PHP を使用して画像ファイル サイズをバッチ圧縮する方法
はじめに:
インターネットの発展に伴い、画像は私たちの日常でますます一般的になってきています。生きています。ただし、画像ファイルが大きい場合も小さい場合も、ストレージと送信の問題が発生します。画像ファイルのサイズを削減し、Web サイトの読み込み速度を向上させるために、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 を使用して画像ファイルのサイズをバッチ圧縮することで、画像ファイルのサイズを効果的に削減し、Web サイトの読み込み速度を向上させることができます。この記事では、簡単な方法と対応するコード例を説明しますが、実際の状況に応じて調整および拡張する必要があります。この記事が画像ファイルのより適切な処理と最適化に役立つことを願っています。
以上がPHPを使用して画像ファイルのサイズを一括圧縮する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。