Rumah >pembangunan bahagian belakang >tutorial php >Bagaimana untuk memampatkan saiz fail imej secara berkelompok menggunakan PHP
Cara menggunakan PHP untuk memampatkan saiz fail imej secara berkelompok
Pengenalan:
Dengan perkembangan Internet, gambar menjadi semakin biasa dalam kehidupan seharian kita. Walau bagaimanapun, fail gambar besar dan kecil juga membawa masalah penyimpanan dan penghantaran. Untuk mengurangkan saiz fail imej dan meningkatkan kelajuan pemuatan tapak web, kami boleh menggunakan PHP untuk memampatkan saiz fail imej secara berkelompok. Artikel ini akan memperkenalkan cara menggunakan PHP untuk memampatkan kumpulan saiz fail imej dan memberikan contoh kod yang berkaitan.
Langkah:
$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); }
Ringkasan:
Dengan menggunakan PHP Dengan memampatkan imej saiz dalam kelompok, kami boleh mengurangkan saiz fail imej dengan berkesan dan meningkatkan kelajuan pemuatan tapak web. Artikel ini menyediakan kaedah mudah dan contoh kod yang sepadan, tetapi ia perlu disesuaikan dan dilanjutkan mengikut situasi sebenar. Saya harap artikel ini membantu anda memproses dan mengoptimumkan fail imej dengan lebih baik.
Atas ialah kandungan terperinci Bagaimana untuk memampatkan saiz fail imej secara berkelompok menggunakan PHP. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!