欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

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

程序员文章站 2023-11-11 20:49:52
复制代码 代码如下:
...

复制代码 代码如下:

<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;  
} www.jb51.net 
//创建空白新图片  
$newimage=imagecreatetruecolor($width, $height);  
//copy源图片内容 copy新图片  
imagecopyresized($newimage, $image, 0,0, 0,0, $width, $height, $w, $h);  
$filename="upload/s_".$file;  
imagejpeg($newimage,$filename);