PHP批量生成缩略图的代码


Posted in PHP onJuly 19, 2008

缺点:长宽不一的图片会被拉伸变形,不能智能裁切,需要智能裁切的,请自行研究。
<?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='{$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='{$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; 
?>

PHP 相关文章推荐
PHP 增加了对 .ZIP 文件的读取功能
Oct 09 PHP
我的论坛源代码(十)
Oct 09 PHP
php获取url字符串截取路径的文件名和扩展名的函数
Jan 22 PHP
关于shopex同步ucenter的redirect问题,导致script不运行
Apr 10 PHP
ThinkPHP公共配置文件与各自项目中配置文件组合的方法
Nov 24 PHP
thinkphp文件处理类Dir.class.php的用法分析
Dec 08 PHP
php计划任务之ignore_user_abort函数实现方法
Jan 08 PHP
php实现网页缓存的工具类分享
Jul 14 PHP
学习PHP的数组总结【经验】
May 05 PHP
Laravel学习教程之本地化模块
Aug 18 PHP
深入学习微信网址链接解封的防封原理visit_type
Aug 15 PHP
PHP利用缓存处理用户注册时的邮箱验证,成功后用户数据存入数据库操作示例
Dec 31 PHP
Discuz 模板引擎的封装类代码
Jul 18 #PHP
PHP令牌 Token改进版
Jul 18 #PHP
php下intval()和(int)转换使用与区别
Jul 18 #PHP
PHP入门学习的几个不错的实例代码
Jul 13 #PHP
php header()函数使用说明
Jul 10 #PHP
php下实现一个阿拉伯数字转中文数字的函数
Jul 10 #PHP
兼容PHP5的PHP目录管理函数库
Jul 10 #PHP
You might like
PHP中header和session_start前不能有输出原因分析
2013/01/11 PHP
php使用Cookie实现和用户会话的方法
2015/01/21 PHP
带你了解PHP7 性能翻倍的关键
2015/11/19 PHP
thinkphp jquery实现图片上传和预览效果
2020/07/22 PHP
js 禁用只读文本框获得焦点时的退格键
2010/04/25 Javascript
计算新浪Weibo消息长度(还可以输入119字)
2013/07/02 Javascript
div浮层,滚动条移动,位置保持不变的4种方法汇总
2013/12/11 Javascript
解决JQeury显示内容没有边距内容紧挨着浏览器边线
2013/12/20 Javascript
JavaScript实现的encode64加密算法实例分析
2015/04/15 Javascript
jQuery+AJAX实现遮罩层登录验证界面(附源码)
2020/09/13 Javascript
vuex中使用对象展开运算符的示例
2017/09/25 Javascript
微信小程序实时聊天WebSocket
2018/07/05 Javascript
vue升级之路之vue-router的使用教程
2018/08/14 Javascript
JavaScript 判断iPhone X Series机型的方法
2019/01/28 Javascript
JS使用JSON.parse(),JSON.stringify()实现对对象的深拷贝功能分析
2019/03/06 Javascript
解决vue一个页面中复用同一个echarts组件的问题
2020/07/19 Javascript
python 调用c语言函数的方法
2017/09/29 Python
python根据文章标题内容自动生成摘要的实例
2019/02/21 Python
Python socket非阻塞模块应用示例
2019/09/12 Python
使用pytorch搭建AlexNet操作(微调预训练模型及手动搭建)
2020/01/18 Python
Python爬取新型冠状病毒“谣言”新闻进行数据分析
2020/02/16 Python
python基于win32api实现键盘输入
2020/12/09 Python
详解css3 flex弹性盒自动铺满写法
2020/09/17 HTML / CSS
大码女装:Ulla Popken
2019/08/06 全球购物
梅西百货官网:Macy’s
2020/08/04 全球购物
Lookfantastic阿联酋官网:英国知名美妆护肤购物网站
2020/05/26 全球购物
几道Java和数据库的面试题
2013/05/30 面试题
护理毕业生自荐信范文
2013/12/22 职场文书
竞选学生会演讲稿
2014/04/25 职场文书
经理任命书模板
2014/06/06 职场文书
大专生自荐书范文
2014/06/22 职场文书
大学生自我推荐信范文
2015/03/24 职场文书
学生病假条范文
2015/08/17 职场文书
优质护理心得体会
2016/01/22 职场文书
小学语文教学反思范文
2016/03/03 职场文书
CSS 实现Chrome标签栏的技巧
2021/08/04 HTML / CSS