短所: 長さと幅が異なる画像は引き伸ばされ、変形するため、インテリジェントなトリミングが必要な場合は、独自の調査を行ってください。
$config = array();
$config['t_width'] = 98; $config['ignore'] = array("",".","..");
$config['prefix'] = "thumb_"
define("IMAGE_JPG", 2); );
define("ENDL", "n");
if($handle = opendir($config['path'])) {
while(false !== ($file = readdir($handle))) {
if(!array_search($file,$config['ignore'])) {
list($im_width, $im_height, $type) = getimagesize($file);
if($type != IMAGE_JPG) {
続行
}
$op .= "見つかりました -> " .
if(!$im) {
$op .= "失敗 ->
続行;
if(file_exists($config['prefix'] . $ file) || substr($file, 0, strlen($config['prefix'])) == $config['prefix']) {
$op .= "注 -> このファイルにはすでにサムネイルが付いています." . ENDL;
Continue;
}
$to = imagecreatetruecolor($config['t_width'],$config['t_height']);
if(!$to) {
$op .= "fail -> ; 宛先イメージ ポインターを作成できませんでした。" . ENDL;
続行;
}
if(!imagecopyresampled($to, $im, 0, 0, 0, 0, $config['t_width'], $config[ 't_height'], $im_width, $im_height)) {
$op .= "失敗 -> サムネイルを作成できませんでした。ENDL
}
//ファイルを保存します
imagejpeg( $to, $config['prefix'] . $file);
$op .= "完了 -> サムを作成しました: {$config['prefix']}{$file}" . ENDL;
$done++;
}
}
}
closedir($handle);
$op .= "fin -> $done} ファイルが書き込まれました" .ENDL;
echo "
"; <br>echo $op; <br>echo "";