将多维数组的子数组附加到PHP关联数组

时间:2012-08-15 21:00:26

标签: php multidimensional-array

如何将多维数组的部分添加到现有的二维(关联) 阵列

例如,对于具有以下元素的现有关联数组:

$builder = array();
$builder['builder_id'] =        $source['id'];
$builder['builder_name'] =      $source['name'];
$builder['builder_address'] =   $source['address'];

以下多维数组的部分如何:

$selection[$category['category_name']]['item_name'] = $category_general['item_name'];
$selection[$category['category_name']]['item_source'] = $category_general['item_source'];
$selection[$category['category_name']]['item_image'] = $category_general['item_image'];

附加以创建以下结构:

$builder['builder_id']
$builder['builder_name']
$builder['builder_address']
$builder['category_name']
$builder['category_name']['item_name']
$builder['category_name']['item_source']
$builder['category_name']['item_image']

这样的作业不起作用:

$builder['category_name'] = $selection[$category['category_name']];
$builder['category_name'] = $selection[$category['category_name']][];

有什么建议吗?

谢谢!

编辑:
@symcbean你是对的。由于分配了数组中的null元素,赋值失败 @Snowsickle感谢提示确定了问题的来源。

2 个答案:

答案 0 :(得分:2)

第一项任务应该有效。

$builder['category_name'] = $selection[$category['category_name']];

会将数组$selection[$category['category_name']]中包含的所有值分配给数组$builder['category_name']

DEMO

答案 1 :(得分:0)

作业应该有效..但是如果你需要另一种方法:

foreach($selection[$category['category_name']] as $key => $value)
{
    $builder['category_name'][$key] = $value;
}

但是再一次,使用数组赋值对我来说一直很有用。