2013-09-10 4 views
1

У меня есть массив $ h и $ w. он создаст только move_uploaded_file($_FILES['image']['tmp_name'],$_FILES['image']['name']);, как я могу использовать массив размеров при создании новых изображений?Изменение размера изображения с массивом высоты и ширины

for ($resize=1; $resize <= $units; $resize++) 
    { 
     $new = $album_name."_".$image_name."_".$resize.".".$image_ext; 
     $targetImage = imagecreatetruecolor($w, $h); 
     $image = imagecreatefromstring(file_get_contents($target));   
     imagecopyresampled($targetImage,$image, 0, 0, 0, 0, $w, $h, $originalWidth, $originalHeight); 
     imagejpeg($targetImage,'uploads/'.$albumName.'/'.$new,80); 
    } 

ответ

0

В вашем фрагменте кода $w и $h, кажется, не быть массивами.

Предположим, что $w и $h являются массивами размера $resize с различными размерами изображения.

Следующий код также определяет тип изображения MIME с использованием функции getimagesize и изменяет размер изображений JPG, PNG и GIF.

for ($resize=1; $resize <= $units; $resize++) 
{ 
    $size = getimagesize($target); 

    if ($size === false) 
     return false; 

    $format = strtolower(substr($size['mime'], strpos($size['mime'], '/') + 1)); 
    $icfunc = "imagecreatefrom" . $format; 
    if (!function_exists($icfunc)) 
     return false; 

    $new = $album_name."_".$image_name."_".$resize.".".$image_ext; 

    $targetImage = imagecreatetruecolor($w[$resize], $h[$resize]); 
    $image = $icfunc($target); 
    imagecopyresampled($targetImage,$image, 0, 0, 0, 0, $w[$resize], $h[$resize], $originalWidth, $originalHeight); 

    switch ($size['mime']) { 
     case 'image/jpg': 
     case 'image/jpeg': 
     case 'image/pjpeg': 
      return imagejpeg($dst_r, 'uploads/'.$albumName.'/'.$new, 80); 
      break; 
     case 'image/png'; 
      return imagepng($dst_r, 'uploads/'.$albumName.'/'.$new, 2); 
      break; 
     case 'image/gif'; 
      return imagegif($dst_r, 'uploads/'.$albumName.'/'.$new); 
      break; 
     default: 
      return; 
    } 
} 
+0

У меня есть вход. который является $ w = $ _POST [width] и $ w = $ _POST [height]

+0

@JethroAbarquez Итак, что такое' $ resize'? – zavg

+0

Я использовал $ resize, чтобы закодировать значения массива –

Смежные вопросы