php实现批量压缩图片文件大小的脚本


Posted in PHP onJuly 04, 2014

今天,想上传大量图片到论坛,由于图片是单反拍的,体积较大,就写了一个脚本,批量压缩图片。

<?php

if ($handle = opendir('./old')) {

    while (false !== ($file = readdir($handle))) {
        if ($file == '.' || $file == '..') {
            continue;
        }
        write('d:/wamp/www/test/old/'.$file, 'd:/wamp/www/test/new/'.$file);
    }

    closedir($handle);
}


function write($old, $new) {
    $maxsize=1000;
    $image = new Imagick($old);
    if($image->getImageHeight() <= $image->getImageWidth())
    {
        $image->resizeImage($maxsize,0,Imagick::FILTER_LANCZOS,1);
    }
    else
    {
        $image->resizeImage(0,$maxsize,Imagick::FILTER_LANCZOS,1);
    }
    $image->setImageCompression(Imagick::COMPRESSION_JPEG);
    $image->setImageCompressionQuality(90);
    $image->stripImage();
    $image->writeImage($new);
    $image->destroy();
}
?>
PHP 相关文章推荐
新手配置 PHP 调试环境(IIS+PHP+MYSQL)
Jan 10 PHP
PHP与SQL注入攻击[一]
Apr 17 PHP
基于php常用正则表达式的整理汇总
Jun 08 PHP
php file_get_contents抓取Gzip网页乱码的三种解决方法
Nov 12 PHP
phpmyadmin中禁止外网使用的方法
Nov 04 PHP
php约瑟夫问题解决关于处死犯人的算法
Mar 23 PHP
php+ajax实现的点击浏览量加1
Apr 16 PHP
PHP中set_include_path()函数相关用法分析
Jul 18 PHP
PHP中rename()函数的妙用讲解
Feb 28 PHP
PHP的简单跳转提示的实现详解
Mar 14 PHP
微信JSSDK分享功能图文实例详解
Apr 08 PHP
PHP程序员简单的开展服务治理架构操作详解(一)
May 14 PHP
PHP实现的英文名字全拼随机排号脚本
Jul 04 #PHP
PHP临时文件的安全性分析
Jul 04 #PHP
PHP curl实现抓取302跳转后页面的示例
Jul 04 #PHP
PHP不用递归遍历目录下所有文件的代码
Jul 04 #PHP
对于ThinkPHP框架早期版本的一个SQL注入漏洞详细分析
Jul 04 #PHP
PHP+Memcache实现wordpress访问总数统计(非插件)
Jul 04 #PHP
php+memcache实现的网站在线人数统计代码
Jul 04 #PHP
You might like
php中变量及部分适用方法
2008/03/27 PHP
PHP数组无限分级数据的层级化处理代码
2012/12/29 PHP
VIM中设置php自动缩进为4个空格的方法详解
2013/06/14 PHP
PHP的cURL库简介及使用示例
2015/02/06 PHP
php实现数字补零的方法总结
2018/09/12 PHP
jquery easyui滚动条部分设置介绍
2013/09/12 Javascript
js离开或刷新页面检测(且兼容FF,IE,Chrome)
2014/03/05 Javascript
JS实现文字放大效果的方法
2015/03/03 Javascript
js 连续赋值的简单实现
2016/06/13 Javascript
js HTML5 Canvas绘制转盘抽奖
2020/09/13 Javascript
vue-resource请求实现http登录拦截或者路由拦截的方法
2018/07/11 Javascript
使用FormData实现上传多个文件
2018/12/04 Javascript
详解vue中async-await的使用误区
2018/12/05 Javascript
vue中实现动态生成二维码的方法
2020/02/21 Javascript
JavaScript进阶(二)词法作用域与作用域链实例分析
2020/05/09 Javascript
[54:10]Spirit vs NB Supermajor小组赛 A组败者组决赛 BO3 第一场 6.2
2018/06/03 DOTA
python自动化测试之连接几组测试包实例
2014/09/28 Python
Python中的深拷贝和浅拷贝详解
2015/06/03 Python
Python实现动态图解析、合成与倒放
2018/01/18 Python
Python使用googletrans报错的解决方法
2018/09/25 Python
python使用zip将list转为json的方法
2018/12/31 Python
python实现桌面壁纸切换功能
2019/01/21 Python
详解python配置虚拟环境
2019/04/08 Python
python flask框架实现重定向功能示例
2019/07/02 Python
在windows下使用python进行串口通讯的方法
2019/07/02 Python
python图片剪裁代码(图片按四个点坐标剪裁)
2020/03/10 Python
Python多线程threading join和守护线程setDeamon原理详解
2020/03/18 Python
python 6行代码制作月历生成器
2020/09/18 Python
HUGO BOSS美国官方网上商店:世界知名奢侈品牌
2017/08/04 全球购物
C/C++程序员常见面试题二
2015/11/19 面试题
结构工程研究生求职信
2013/10/13 职场文书
普通党员对照检查材料
2014/08/28 职场文书
个人师德师风自我剖析材料
2014/09/29 职场文书
党的群众路线教育实践活动整改方案
2014/10/28 职场文书
Python趣味挑战之教你用pygame画进度条
2021/05/31 Python
HTML实现仿Windows桌面主题特效的实现
2022/06/28 HTML / CSS