将关联元素添加到关联数组

问题描述 投票:0回答:2

如何将另一个多维数组添加到已存在的数组中。

$args = array('a'=>1,'b'=>2,'c'=>3);

然后我想将 'd'=>4 添加到已经设置的数组中。我试过:

$args[] = array('d'=>4);

但我最终得到了

Array ( [a] => 1 [b] => 2 [c] => 3 [0] => Array ( [d] => 4 ) ) 

而不是

Array ( [a] => 1 [b] => 2 [c] => 3 [0] => [d] => 4 )

达到这个结果的正确方法是什么?

php arrays associative-array
2个回答
2
投票

这是一个简单的示例,仅当您想要显式将键

d
设置为
4
时才有效。如果您想要更通用的解决方案,请参阅其他答案。由于其他答案没有提到明确的解决方案,我想我会的。

你尝试过这个:

$args[] = array('d'=>4);

这样做的目的是将数组

['d'=>4]
作为新条目添加到现有
$args
数组中。如果你确实想将
$args['d']
的值设置为
4
那么你可以直接这样做:

$args['d'] = 4;

请注意:
这是一个明确的答案。如果

d
键已经存在,它将覆盖它。它对于向数组添加新条目没有用,因为您必须手动执行此操作。如果您只想设置一个元素并完成任何操作,则可使用。如果您需要更通用的解决方案,请不要使用此解决方案。


1
投票
使用

array_merge($myArray, array('d' => 1234))

 
http://php.net/manual/en/function.array-merge.php

$args = array('foo' => 1); $args = array_merge($args, array('bar'=>2));

这将使

$args



array => [ 'foo' => 1, 'bar' => 2 ]
    
© www.soinside.com 2019 - 2024. All rights reserved.