2012-07-20 58 views
-4

這是我的工作圖片上傳和重命名代碼,但我需要一些幫助來調整正在上傳的圖片的大小。用PHP上傳調整圖片的大小

上傳代碼:

// Upload File to Directory 
    $code = md5(time()); 
    $image = $_FILES['userfile']['name']; 
    $imagename = $code.$image; 
    $file_name = basename($_FILES['userfile']['name']); 
    $uploaddir = '../_gallery/' . $imagename; 
    $uploadfile = $uploaddir . basename($_FILES['userfile']['name']); 
    move_uploaded_file($_FILES['userfile']['tmp_name'], $uploadfile); 

存儲到MySQL:

$sql="UPDATE b_thome SET 
hdescription = '$front_description', 
himg = '$uploadfile', 
hndescription = '$right_description', 
hfacebook='$facebook_link', 
htwitter='$twitter_link' 
WHERE locationid = '$location'"; 

有沒有一種簡單的方法來調整圖像設置的600 x 800像素?

謝謝!

回答

1

使用GD庫來調整它,它提供了所有你可以要求圖像管理功能。有了它,你可以使用這樣的功能來創建一個形象,是一個減少的第一個:

function resizeImage($file, $filename, $newwidth = 800, $newheight = 600) 
{  
    $type = substr($file,strrpos($file,".")+1); 

    switch($type) 
    { 
     case 'jpg': 
      $src = imagecreatefromjpeg($file); 
      break; 
     case 'jpeg': 
      $src = imagecreatefromjpeg($file); 
      break; 
     case 'gif': 
      $src = imagecreatefromgif($file); 
      break; 
     case 'png': 
      $src = imagecreatefrompng($file); 
      break; 
     default: 
      $src = imagecreatefromjpeg($file); 
      break; 
    } 

    list($width,$height)=getimagesize($file); 
    $tmp=imagecreatetruecolor($newwidth,$newheight); 
    imagecopyresampled($tmp,$src,0,0,0,0,$newwidth,$newheight,$width,$height); 

    switch($type) { 
     case 'jpg': 
      imagejpeg($tmp,$filename,100); 
      break; 
     case 'jpeg': 
      imagejpeg($tmp,$filename,100); 
      break; 
     case 'gif': 
      imagegif($tmp,$filename,100); 
      break; 
     case 'png': 
      imagepng($tmp,$filename,9); 
      break; 
     case 'wbm': 
      imagewbmp($tmp,$filename,100); 
      break; 
     default: 
      imagejpeg($tmp,$filename,100); 
      break; 
    } 
    imagedestroy($src); 
    imagedestroy($tmp); 
    return true; 
} 
+0

以及我如何實現這個代碼來挖掘? – user1540512 2012-07-20 14:33:35

1

或者,如果你是懶惰的,有一個名爲PHP Image Magican一個很好的開源項目,它使圖像縮放不錯並且容易。