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 相关文章推荐
繁体中文转换为简体中文的PHP函数
Oct 09 PHP
PHP程序开发范例学习之表单 获取文本框的值
Aug 08 PHP
基于PHP异步执行的常用方式详解
Jun 03 PHP
深入php define()函数以及defined()函数的用法详解
Jun 05 PHP
服务器变量 $_SERVER 的深入解析
Jul 02 PHP
typecho插件编写教程(六):调用接口
May 28 PHP
PHP通过加锁实现并发情况下抢码功能
Aug 10 PHP
关于Laravel Route重定向的一个注意点
Jan 16 PHP
laravel学习笔记之模型事件的几种用法示例
Aug 15 PHP
详解php命令注入攻击
Apr 06 PHP
PHP利用pdo_odbc实现连接数据库示例【基于ThinkPHP5.1搭建的项目】
May 13 PHP
PHP pthreads v3下worker和pool的使用方法示例
Feb 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中动态调用函数的方法
2015/03/16 PHP
PHP判断是否为空的几个函数对比
2015/04/21 PHP
PHP PDO操作MySQL基础教程
2017/06/05 PHP
jQuery Ajax使用 全解析
2010/12/15 Javascript
定义JavaScript二维数组采用定义数组的数组来实现
2012/12/09 Javascript
基于javascript代码检测访问网页的浏览器呈现引擎、平台、Windows操作系统、移动设备和游戏系统
2015/12/03 Javascript
jQuery同步提交示例代码
2015/12/12 Javascript
基于jQuery实现美观且实用的倒计时实例代码
2015/12/30 Javascript
基于javascript实现简单计算器功能
2016/01/03 Javascript
Vue.js快速入门教程
2016/09/07 Javascript
JS实现“隐藏与显示”功能(多种方法)
2016/11/24 Javascript
ES6中Math对象的部分扩展
2017/02/20 Javascript
js实现3D图片展示效果
2017/03/09 Javascript
Vue插件写、用详解(附demo)
2017/03/20 Javascript
jquery.uploadView 实现图片预览上传功能
2017/08/10 jQuery
vue请求本地自己编写的json文件的方法
2019/04/25 Javascript
React精髓!一篇全概括小结(急速)
2019/05/23 Javascript
Openlayers绘制聚合标注
2020/09/28 Javascript
vue用ant design中table表格,点击某行时触发的事件操作
2020/10/28 Javascript
[59:59]EG vs IG 2018国际邀请赛小组赛BO2 第二场 8.16
2018/08/17 DOTA
python中列表元素连接方法join用法实例
2015/04/07 Python
Python计算三角函数之asin()方法的使用
2015/05/15 Python
python开发之文件操作用法实例
2015/11/13 Python
Python机器学习之决策树算法
2017/12/22 Python
Django使用Celery异步任务队列的使用
2018/03/13 Python
详解python itertools功能
2020/02/07 Python
HTML5移动端手机网站开发流程
2016/04/25 HTML / CSS
英国Flybe航空官网:欧洲最大的独立支线廉价航空公司
2019/07/15 全球购物
一套Delphi的笔试题二
2013/05/11 面试题
乐观大学生的自我评价
2014/01/10 职场文书
党的群众路线教育实践活动个人批评与自我批评
2014/10/16 职场文书
廉政文化进校园广播稿
2014/10/20 职场文书
2014年个人业务工作总结
2014/11/17 职场文书
2015教师个人工作总结范文
2015/03/31 职场文书
python函数指定默认值的实例讲解
2021/03/29 Python
教你如何让spark sql写mysql的时候支持update操作
2022/02/15 MySQL