首页 > 解决方案 > PHP 使用 For Each 循环在数组中追加数组

问题描述

我有下面的代码,我需要能够根据有多少图像(最多 35 个)动态附加数组。我有一个包含图像数量的对象数组,是否可以使用 foreach 循环遍历它们并为每个对象创建一个数组。

                array(
                    'name' => 'images',
                    array(
                        'name' => 'img',
                        'value'=> '',
                        'attributes' => array(
                            'id' => 'm',
                            'modTime' => $date,
                            'url' => '/FacadeImages/'.$Facade->Image,
                            'format' => 'jpg',
                        ),
                    ),
//                    Need to dynamically include the additional images here
                )

想做这样的事情:

            array(
                'name' => 'images',
                array(
                    'name' => 'img',
                    'value'=> '',
                    'attributes' => array(
                        'id' => 'm',
                        'modTime' => $date,
                        'url' => '/FacadeImages/'.$Facade->Image,
                        'format' => 'jpg',
                    ),
                ),
           foreach($AdditionalImages as $AdditionalImage){
                array(
                    'name' => 'img',
                    'value'=> '',
                    'attributes' => array(
                        'id' => '1',
                        'modTime' => $date,
                        'url' => '/AdditionalImages/'.$AdditionalImage->Image,
                        'format' => 'jpg',
                    ),
                ),
           }

            ), 

谢谢你的帮助 :)

标签: php

解决方案


如果我没有错,那么您需要类似下面的内容在主阵列上附加附加图像,

$expected_array = [];
foreach($main_array as $key=>$array){
  $expected_array[] = $array;
  foreach($array['AdditionalImages'] as $AdditionalImage){
   $expected_array[$key][] = $AdditionalImage;
  }
}

print_r($expected_array);

推荐阅读