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 相关文章推荐
php数组对百万数据进行排除重复数据的实现代码
Jun 08 PHP
PHP安全配置详细说明
Sep 26 PHP
支持中文的php加密解密类代码
Nov 27 PHP
apache mysql php 源码编译使用方法
May 03 PHP
细谈php中SQL注入攻击与XSS攻击
Jun 10 PHP
VIM中设置php自动缩进为4个空格的方法详解
Jun 14 PHP
解析二进制流接口应用实例 pack、unpack、ord 函数使用方法
Jun 18 PHP
解析php防止form重复提交的方法
Jul 01 PHP
浅谈ThinkPHP的URL重写
Nov 25 PHP
Codeigniter校验ip地址的方法
Mar 21 PHP
yii2.0使用Plupload实现带缩放功能的多图上传
Dec 22 PHP
支持汉转拼和拼音分词的PHP中文工具类ChineseUtil
Feb 23 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
DOTA2 无惧惊涛骇浪 昆卡大型水友攻略
2020/04/20 DOTA
PHP 伪静态隐藏传递参数名的四种方法
2010/02/22 PHP
ThinkPHP3.1基础知识快速入门
2014/06/19 PHP
phpstudy默认不支持64位php的解决方法
2017/02/20 PHP
PHP字典树(Trie树)定义与实现方法示例
2017/10/09 PHP
JavaScript常用全局属性与方法记录积累
2013/07/03 Javascript
让jQuery Mobile不显示讨厌loading界面的方法
2014/02/19 Javascript
node.js中的fs.chmod方法使用说明
2014/12/18 Javascript
node爬取微博的数据的简单封装库nodeweibo使用指南
2015/01/02 Javascript
jQuery实现仿腾讯视频列表分页效果的方法
2015/08/07 Javascript
理解Javascript文件动态加载
2016/01/29 Javascript
Bootstrap每天必学之滚动监听
2016/03/16 Javascript
微信小程序 开发指南详解
2016/09/27 Javascript
jQuery中的100个技巧汇总
2016/12/15 Javascript
原生JS+Canvas实现五子棋游戏
2020/05/28 Javascript
基于JSON数据格式详解
2017/08/31 Javascript
vue+element UI实现树形表格带复选框的示例代码
2019/04/16 Javascript
详解微信小程序开发(项目从零开始)
2019/06/06 Javascript
js实现简单的轮播图效果
2020/12/13 Javascript
Python中操作MySQL入门实例
2015/02/08 Python
Python类的用法实例浅析
2015/05/27 Python
详解在Python程序中自定义异常的方法
2015/10/16 Python
python GUI实现小球满屏乱跑效果
2019/05/09 Python
使用Keras画神经网络准确性图教程
2020/06/15 Python
CSS3美化表单控件全集
2016/06/29 HTML / CSS
加拿大奢华时装品牌:Mackage
2018/01/10 全球购物
英国在线花园中心:You Garden
2018/06/03 全球购物
时尚设计师手表:The Watch Cabin
2018/10/06 全球购物
Anya Hindmarch官网:奢侈设计师手袋及配饰
2018/11/15 全球购物
草莓网中国:StrawberryNet中国
2020/08/17 全球购物
应用心理学个人的求职信
2013/12/08 职场文书
团代会主持词
2014/04/02 职场文书
群教班子对照检查材料
2014/08/26 职场文书
房屋认购协议书
2015/01/29 职场文书
2015大学生党员自我评价范文
2015/03/03 职场文书
电影建国大业观后感
2015/06/01 职场文书