Массив $file_ary
содержит изображения из ввода файла. Это выглядит так:
Array
(
[0] => Array
(
[name] => Screenshot from 2015-03-06 15:41:58.png
[type] => image/png
[tmp_name] => /tmp/php2b8cbW
[error] => 0
[size] => 87810
)
[1] => Array
(
[name] => Screenshot from 2015-03-06 15:45:00.png
[type] => image/png
[tmp_name] => /tmp/phpcpmK2A
[error] => 0
[size] => 93532
)
)
То, что я хотел бы сделать, - обрезать каждый из этих файлов. И я подумал о том, чтобы установить новые ширины и высоты в другом массиве.
$imgSizes = array(
'100' => '100',
'150' => '150',
'130' => '400'
);
if(!empty($file_ary)) {
foreach($file_ary as $file) {
foreach($imgSizes as $key => $val) {
echo $file['name'];
echo '<br>';
//$resizeObj -> resizeImage(100, 100, 'crop');
//$resizeObj -> saveImage('images/100/'.$this->id.'.gif', 100);
}
}
}
Прямо сейчас foreach($imgSizes as $key => $val) {
возвращает 6 изображений... по одному для каждой клавиши и по одному для каждого значения val. Я хотел бы использовать ключ и val из массива $imgSizes
для установки нового размера $resizeObj → resizeImage($key, $val, 'crop');
, переименовать и сохранить его //$resizeObj → saveImage('images/'.$key.'/'.$this->id.'.gif', $key);
Я не знаю, как это делается.
Если я хорошо понимаю ваш вопрос, вам придется немного переписать структуру массива, например:
$imgSizes = array(
0 => array(
'width' => '100',
'height' => '100'
),
1 => array(
'width' => '150',
'height' => '150'
),
2 => array(
'width' => '130',
'height' => '400'
)
);
if(!empty($file_ary)) {
foreach($file_ary as $file) {
foreach($imgSizes as $key => $val) {
echo $file['name'];
echo '<br>';
$resizeObj -> resizeImage($val['width'], $val['height'], 'crop');
$resizeObj -> saveImage('images/'.$val['width'].'/'.$this->id.'.gif', $val['width']);
}
}
}