
缺点:长宽不一的图片会被拉伸变形,不能智能裁切,需要智能裁切的,请自行研究。
<?php  
$config = array();  
$config['path'] = "./";  
$config['t_width'] = 120;  
$config['t_height'] = 98;  
$config['ignore'] = array("",".","..");  
$config['prefix'] = "thumb_";  
$done = 0;  
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) {  
continue;  
}  
$op .= "found -> <a href='http://www.gimoo.net/t/1409/{$file}'>$file</a>" . ENDL;  
$im = @imagecreatefromjpeg($file);  
if(!$im) {  
$op .= "fail -> couldn't create sour image pointer." . ENDL;  
continue;  
}  
if(file_exists($config['prefix'] . $file) || substr($file, 0, strlen($config['prefix'])) == $config['prefix']) {  
$op .= "note -> this file has already got a thumbnail." . ENDL;  
continue;  
}  
$to = imagecreatetruecolor($config['t_width'],$config['t_height']);  
if(!$to) {  
$op .= "fail -> couldn't create dest image pointer." . ENDL;  
continue;  
}  
if(!imagecopyresampled($to, $im, 0, 0, 0, 0, $config['t_width'], $config['t_height'], $im_width, $im_height)) {  
$op .= "fail -> couldn't create thumbnail. php fail." . ENDL;  
continue;  
}  
//保存文件  
imagejpeg($to, $config['prefix'] . $file);  
$op .= "done -> created thumb: <a href='http://www.gimoo.net/t/1409/{$config['prefix']}{$file}'>{$config['prefix']}{$file}</a>" . ENDL;  
$done++;  
}  
}  
}  
closedir($handle);  
$op .= "fin -> {$done} file(s) written" . ENDL;  
echo "<pre>";  
echo $op;  
echo "</pre>";  
exit;  
?>