php利用GD庫生成縮略圖

gxfw 9年前發布 | 819 次閱讀 PHP 縮略圖

    <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);  </pre> 


 本文由用戶 gxfw 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。
 轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。
 本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!