php生成缩略图示例代码分享(使用gd库实现)


Posted in PHP onJanuary 20, 2014
<form method="post" action="suo_do.php" enctype="multipart/form-data">   
<input type="file" name="pic" />   
<input type="submit" value="上传1" />   
</form>   
<?php   
header("content-type:text/html;charset=gbk");   
ini_set("date.timezone","Asia/chong");   
//判断文件是否为空   
if(empty($_FILES)){   
echo"上传文件过大";   
exit;   
}   
//判断文件上传是否有错误   
if($_FILES['pic']['error']){   
echo "上传文件";   
exit;   
}   
//判断文件类型是否非法获取文件后缀   
$allowtype=array("jpg","png","jpeg","gif");   
$a=explode('.',$_FILES['pic']['name']);   
$index=count($a)-1;   
$ex=strtolower($a[$index]);   
if(!in_array($ex,$allowtype)){   
echo "上传文件非法";   
exit;   
}   
$file=date('YmdHis').rand().".".$ex;   
$src=$_FILES['pic']['tmp_name'];   
$des="upload/".$file;   
$rs=move_uploaded_file($src,$des);   //缩略图   
//读取已经上传图片   
$image=imagecreatefromjpeg($des);   
$a=getimagesize($des);   
$w=$a[0];   
$h=$a[1];   
if($w>$h){   
$width=300;   
$height=$width/$w*$h;   
}else if($w<$h){   
$height=300;   
$width=$height/$h*$w;   
}else{   
$width=300;   
$height=300;   
} 3water.com  
//创建空白新图片   
$newimage=imagecreatetruecolor($width, $height);   
//copy源图片内容 copy新图片   
imagecopyresized($newimage, $image, 0,0, 0,0, $width, $height, $w, $h);   
$filename="upload/s_".$file;   
imagejpeg($newimage,$filename);  
PHP 相关文章推荐
Admin generator, filters and I18n
Oct 06 PHP
浅析php中jsonp的跨域实例
Jun 21 PHP
phpQuery占用内存过多的处理方法
Nov 13 PHP
php使用curl访问https示例分享
Jan 17 PHP
ThinkPHP3.1新特性之多层MVC的支持
Jun 19 PHP
使用PHP生成二维码的方法汇总
Jul 22 PHP
php类自动加载器实现方法
Jul 28 PHP
php获取汉字拼音首字母的方法
Oct 21 PHP
PHP编程之设置apache虚拟目录
Jul 08 PHP
php中二分法查找算法实例分析
Sep 22 PHP
常用PHP封装分页工具类
Jan 14 PHP
PHP调用API接口实现天气查询功能的示例
Sep 21 PHP
php解析url的三个示例
Jan 20 #PHP
使用php伪造referer的方法 利用referer防止图片盗链
Jan 20 #PHP
php fsockopen解决办法 php实现多线程
Jan 20 #PHP
linux系统下php安装mbstring扩展的二种方法
Jan 20 #PHP
php共享内存段示例分享
Jan 20 #PHP
php使用base64加密解密图片示例分享
Jan 20 #PHP
用Zend Studio+PHPnow+Zend Debugger搭建PHP服务器调试环境步骤
Jan 19 #PHP
You might like
解决php中Cannot send session cache limiter 的问题的方法
2007/04/27 PHP
php 3行代码的分页算法(求起始页和结束页)
2009/10/21 PHP
php $_SERVER当前完整url的写法
2009/11/12 PHP
关于尾递归的使用详解
2013/05/02 PHP
解析zend studio中直接导入svn中的项目的方法步骤
2013/06/21 PHP
PHP+jQuery 注册模块的改进(一):验证码存入SESSION
2014/10/14 PHP
php实现将Session写入数据库
2015/07/26 PHP
ThinkPHP 框架实现的读取excel导入数据库操作示例
2020/04/14 PHP
JavaScript修改css样式style动态改变元素样式
2013/12/16 Javascript
node.js中的fs.rmdirSync方法使用说明
2014/12/16 Javascript
jquery如何获取元素的滚动条高度等实现代码
2015/10/19 Javascript
javascript每日必学之多态
2016/02/23 Javascript
Webpack 实现 AngularJS 的延迟加载
2016/03/02 Javascript
Bootstrap滚动监听(Scrollspy)插件详解
2016/04/26 Javascript
浅谈对Angular中的生命周期钩子的理解
2017/07/31 Javascript
JavaScript实现的浏览器下载文件的方法
2017/08/09 Javascript
js装饰设计模式学习心得
2018/02/17 Javascript
node.js实现微信开发之获取用户授权
2019/03/18 Javascript
vue实现微信获取用户信息的方法
2019/03/21 Javascript
electron-vue利用webpack打包实现多页面的入口文件问题
2019/05/12 Javascript
layui实现把数据表格时间戳转换为时间格式的例子
2019/09/12 Javascript
JsonServer安装及启动过程图解
2020/02/28 Javascript
python初学者,用python实现基本的学生管理系统(python3)代码实例
2019/04/10 Python
python 接口实现 供第三方调用的例子
2019/08/13 Python
python+django+rest框架配置创建方法
2019/08/31 Python
pytorch::Dataloader中的迭代器和生成器应用详解
2020/01/03 Python
土耳其家居建材网站:Koçtaş
2016/11/22 全球购物
屈臣氏泰国官网:Watsons TH
2021/02/23 全球购物
怎样声明子类
2013/07/02 面试题
自我鉴定思想方面
2013/10/07 职场文书
办公室主任职责范文
2013/11/08 职场文书
关于感恩的演讲稿500字
2014/08/26 职场文书
幼儿园开学家长寄语(2015秋季)
2015/05/27 职场文书
幼儿园园长新年寄语
2015/08/17 职场文书
《红领巾真好》教学反思
2016/02/16 职场文书
python保存大型 .mat 数据文件报错超出 IO 限制的操作
2021/05/10 Python