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+mysql)
Nov 23 PHP
php中判断字符串是否全是中文或含有中文的实现代码
Sep 16 PHP
php数组函数序列之next() - 移动数组内部指针到下一个元素的位置,并返回该元素值
Oct 31 PHP
php程序员应具有的7种能力小结
Nov 27 PHP
浅谈本地WAMP环境的搭建
May 13 PHP
php实现源代码加密的方法
Jul 11 PHP
php文件扩展名判断及获取文件扩展名的N种方法
Sep 12 PHP
PHP4和PHP5版本下解析XML文档的操作方法实例分析
May 20 PHP
使用PHPExcel实现数据批量导出为excel表格的方法(必看)
Jun 09 PHP
Laravel 加载第三方类库的方法
Apr 20 PHP
PHP 实现文件压缩解压操作的方法
Jun 14 PHP
thinkphp5 框架结合plupload实现图片批量上传功能示例
Apr 04 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 读取文件的正确方法
2009/04/29 PHP
php实现用于删除整个目录的递归函数
2015/03/16 PHP
php查询mysql数据库并将结果保存到数组的方法
2015/03/18 PHP
Zend Framework使用Zend_Loader组件动态加载文件和类用法详解
2016/12/09 PHP
JAVASCRIPT对象及属性
2007/02/13 Javascript
cloudgamer出品ImageZoom 图片放大效果
2010/04/01 Javascript
Javascript中的delete介绍
2012/09/02 Javascript
JS实现简单的Canvas画图实例
2013/07/04 Javascript
浅析js预加载/延迟加载
2014/09/25 Javascript
node.js+Ajax实现获取HTTP服务器返回数据
2014/11/26 Javascript
深入浅析react native es6语法
2015/12/09 Javascript
浅谈React深度编程之受控组件与非受控组件
2017/12/26 Javascript
微信小程序如何获取用户手机号
2018/01/26 Javascript
webpack4的迁移的使用方法
2018/05/25 Javascript
JS实现监控微信小程序的原理
2018/06/15 Javascript
json解析大全 双引号、键值对不在一起的情况
2019/12/06 Javascript
js实现验证码干扰(静态)
2021/02/22 Javascript
Python修改Excel数据的实例代码
2013/11/01 Python
对于Python中线程问题的简单讲解
2015/04/03 Python
微信跳一跳游戏python脚本
2020/04/01 Python
python3.6根据m3u8下载mp4视频
2019/06/17 Python
对Python生成器、装饰器、递归的使用详解
2019/07/19 Python
如何通过Python3和ssl实现加密通信功能
2020/05/09 Python
Django模型验证器介绍与源码分析
2020/09/08 Python
python 使用cycle构造无限循环迭代器
2020/12/02 Python
python matplotlib工具栏源码探析三之添加、删除自定义工具项的案例详解
2021/02/25 Python
英国最大的在线奢侈手表零售商:Jura Watches
2018/01/29 全球购物
Liu Jo西班牙官网:意大利服装品牌
2019/09/11 全球购物
小学新教师培训方案
2014/02/03 职场文书
人民教师的自我评价分享
2014/02/21 职场文书
酒店行政人事部经理职务说明书
2014/02/26 职场文书
党员电教片《信仰》心得体会
2016/01/15 职场文书
创业计划书之网吧
2019/10/10 职场文书
SQL Server作业失败:无法确定所有者是否有服务器访问权限的解决方法
2021/06/30 SQL Server
python中的mysql数据库LIKE操作符详解
2021/07/01 MySQL
Mysql实现简易版搜索引擎的示例代码
2021/08/30 MySQL