php GD库生成缩略图
作者:佚名    php网站开发编辑:admin   更新时间:2022-07-23
php GD库生成缩略图分享一个利用php GD库生成缩略图的例子。php利用GD库生成缩略图。代码:
- <formmethod="post"action="suo_do.php"enctype="multipart/form-data">
- <inputtype="file"name="pic"/>
- <inputtype="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;
- }elseif($w<$h){
- $height=300;
- $width=$height/$h*$w;
- }else{
- $width=300;
- $height=300;
- }www.jbxue.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);