php利用GD库生成缩略图

清华大佬耗费三个月吐血整理的几百G的资源,免费分享!....>>>

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