php实现图片上传并利用ImageMagick生成缩略图


Posted in PHP onMarch 14, 2016

使用ImageMagick,您可以轻松,更快地创建缩略图,比使用PHP的容易得多。

<?php
// Location to upload main image:
$mainDir = $_SERVER['DOCUMENT_ROOT'].'/images/l/';
// Location to create the thumb image:
$smalDir = $_SERVER['DOCUMENT_ROOT'].'/images/s/';
// Command to use:
$command = '/usr/bin/convert';
// Thumbnail width:
$size = 210;
// Make sure we have an image:
if(isset($_POST['submit'])){
if(getimagesize($_FILES['photo']['tmp_name'])){
$name = $_FILES['photo']['name'];
$uploadfile = $mainDir . $name;
move_uploaded_file($_FILES['photo']['tmp_name'], $uploadfile);
$lrgImg = $mainDir . $name;
$smlImg = $smalDir . $name;
$imageMagick = $command . " '". $lrgImg . "' -resize '$size' '" . $smlImg . "'";
shell_exec($imageMagick);
}
header("Location: /test.php");
exit;
}else{
?>
<form action=" <?php echo $_SERVER['PHP_SELF']; ?> " method="post" enctype="multipart/form-data">
<p><input type="file" name="photo" /></p>
<p><input type="submit" value="Upload!" name="submit" /></p>
</form>
<?php
foreach(glob($smalDir.'*') as $img){
echo ' <img src="'.str_replace($_SERVER['DOCUMENT_ROOT'], '',$img).'" /> ';
}
}
?>

希望本文所述对大家学习php程序设计有所帮助。

PHP 相关文章推荐
第五节--克隆
Nov 16 PHP
一些关于PHP的知识
Nov 17 PHP
php MySQL与分页效率
Jun 04 PHP
PHP5+UTF8多文件上传类
Oct 17 PHP
比较strtr, str_replace和preg_replace三个函数的效率
Jun 26 PHP
PHP中应该避免使用同名变量(拆分临时变量)
Apr 03 PHP
WordPress中转义HTML与过滤链接的相关PHP函数使用解析
Dec 22 PHP
php封装的表单验证类完整实例
Oct 19 PHP
CodeIgniter框架常见用法工作总结
Mar 16 PHP
Laravel框架中Blade模板的用法示例
Aug 30 PHP
PHP有序表查找之二分查找(折半查找)算法示例
Feb 09 PHP
PHP vsprintf()函数格式化字符串操作原理解析
Jul 14 PHP
YII Framework框架教程之国际化实现方法
Mar 14 #PHP
YII Framework框架教程之缓存用法详解
Mar 14 #PHP
YII Framework框架教程之安全方案详解
Mar 14 #PHP
YII Framework框架教程之日志用法详解
Mar 14 #PHP
YII Framework教程之异常处理详解
Mar 14 #PHP
Zend Framework教程之Application用法实例详解
Mar 14 #PHP
Zend Framework自定义Helper类相关注意事项总结
Mar 14 #PHP
You might like
php 图片上添加透明度渐变的效果
2009/06/29 PHP
PHP session_start()问题解疑(详细介绍)
2013/07/05 PHP
PHP取整函数:ceil,floor,round,intval的区别详细解析
2013/08/31 PHP
百度地图经纬度转换到腾讯地图/Google 对应的经纬度
2015/08/28 PHP
YII使用url组件美化管理的方法
2015/12/28 PHP
crontab无法执行php的解决方法
2016/01/25 PHP
laravel创建类似ThinPHP中functions.php的全局函数
2016/11/26 PHP
Yii2框架类自动加载机制实例分析
2018/05/02 PHP
js onpropertychange输入框 事件获取属性
2009/03/26 Javascript
增强用户体验友好性之jquery easyui window 窗口关闭时的提示
2012/06/22 Javascript
js动态设置div的值下例子
2013/10/29 Javascript
javascript移动设备Web开发中对touch事件的封装实例
2014/06/05 Javascript
jquery表单验证插件(jquery.validate.js)的3种使用方式
2015/03/28 Javascript
javascript省市区三级联动下拉框菜单实例演示
2015/11/29 Javascript
jquery ezUI 双击行记录弹窗查看明细的实现方法
2016/06/01 Javascript
BootStrap轮播HTML代码(推荐)
2016/12/10 Javascript
Vue 2.0+Vue-router构建一个简单的单页应用(附源码)
2017/03/14 Javascript
vue动态生成dom并且自动绑定事件
2017/04/19 Javascript
jQuery正则验证注册页面经典实例
2017/06/10 jQuery
详解AngularJS ng-class样式切换
2017/06/27 Javascript
Python中super的用法实例
2015/05/28 Python
Python多线程经典问题之乘客做公交车算法实例
2017/03/22 Python
pandas.DataFrame.to_json按行转json的方法
2018/06/05 Python
Django添加favicon.ico图标的示例代码
2018/08/07 Python
PIL图像处理模块paste方法简单使用详解
2019/07/17 Python
python Popen 获取输出,等待运行完成示例
2019/12/30 Python
python基于property()函数定义属性
2020/01/22 Python
Python发起请求提示UnicodeEncodeError错误代码解决方法
2020/04/21 Python
教育局长自荐信范文
2013/12/22 职场文书
热门专业求职信
2014/05/24 职场文书
科级干部群众路线教育实践活动对照检查材料思想汇报
2014/09/20 职场文书
2014年村支部书记四风对照检查材料思想汇报
2014/10/02 职场文书
离婚财产分隔协议书
2014/10/23 职场文书
高三语文复习计划
2015/01/19 职场文书
团队执行力培训心得体会
2015/08/15 职场文书
Spring Boot项目如何优雅实现Excel导入与导出功能
2022/06/10 Java/Android