Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770
Форумы портала PHP.SU :: Версия для печати :: Подправить функцию для передачи массива
Форумы портала PHP.SU » PHP » Напишите за меня, пожалуйста » Подправить функцию для передачи массива

Страниц (1): [1]
 

1. Viper - 04 Октября, 2008 - 22:20:09 - перейти к сообщению
собстно она самая:

CODE (text):
скопировать код в буфер обмена
  1.  
  2. function imgResize($src, $dest, $width=200, $height=200, $quality=85) {
  3.   if (!file_exists($src)) return false;
  4.   ini_set('max_execution_time','600');
  5.  
  6.   $gd_ver = gd_info();
  7.   $res = ereg_replace('[[:alpha:][:space:]()]+', '', $GDArray['GD Version']);
  8.   if ($res >= 1.8) echo 'Error!';
  9.  
  10.   $size = getimagesize($src);
  11.   if ($size === false) return false;
  12.  
  13.  list($width_orig, $height_orig) = getimagesize($src);
  14.  $ratio_orig = $width_orig / $height_orig;
  15.  
  16.  if ($width / $height > $ratio_orig) {
  17.  $width = $height * $ratio_orig;
  18.  } else {
  19.  $height = $width / $ratio_orig;
  20.  }
  21.  
  22.  $image_p = imagecreatetruecolor($width, $height);
  23.  $image = imagecreatefromjpeg($src);
  24.  imagecopyresampled($image_p, $image, 0, 0, 0, 0, $width, $height, $width_orig, $height_orig);
  25.  imagejpeg($image_p, $dest, $quality);
  26.  
  27.  imagedestroy($image);
  28.  imagedestroy($image_p);
  29.  
  30.   return true;
  31. }
  32.  


что и где и как дописать чтобы в неё можно было передавать $src не просто строку, а массив имен файлов ?
2. valenok - 05 Октября, 2008 - 03:21:06 - перейти к сообщению
PHP:
скопировать код в буфер обмена
  1.  
  2. <?PHP
  3.  
  4. ini_set('max_execution_time','600');
  5.  
  6. $gd_ver = gd_info();
  7. $res = ereg_replace('[[:alpha:][:space:]()]+', '', $GDArray['GD Version']);
  8. if ($res >= 1.8) echo 'Error!';
  9.  
  10. function imgResize($sources, $dest, $width=200, $height=200, $quality=85) {
  11.  
  12. if(!is_array($sources)) $sources = Array($sources);
  13.  
  14. foreach($sources as $src)
  15. {
  16. if (!file_exists($src)) continue;
  17.  
  18. $size = getimagesize($src);
  19. if ($size === false) continue;
  20.  
  21. $width_orig = $size[0];
  22. $height_orig = $size[1];
  23. $ratio_orig = $width_orig / $height_orig;
  24.  
  25. if ($width / $height > $ratio_orig) $width = $height * $ratio_orig;
  26. else $height = $width / $ratio_orig;
  27.  
  28. $image_p = imagecreatetruecolor($width, $height);
  29. $image = imagecreatefromjpeg($src);
  30. imagecopyresampled($image_p, $image, 0, 0, 0, 0, $width, $height, $width_orig, $height_orig);
  31. imagejpeg($image_p, $dest, $quality);
  32.  
  33. imagedestroy($image);
  34. imagedestroy($image_p);
  35.  
  36. }
  37.  
  38. return true;
  39. }

 

Powered by ExBB FM 1.0 RC1