hol*_*ard 3 php arrays associative-array element
我有两个关联数组,如下所示:
$prod1 = (
[name] = 'John',
[address] = 'Milky way',
[city] = 'Miami',
);
$prod2 = (
[address] = 'Not so milky way'
);
Run Code Online (Sandbox Code Playgroud)
$ prod1总是有相同类型的元素(名称,地址,城市),但$ prod2可以包含所有元素或其中一些元素
我要的是替换的元素值$ PROD1,随着要素匹配$ Prod2的.在上面的例子$ Prod2的包含的地址,因此,在地址$ PROD1应与地址替换$ Prod2的(其中的元件的其余部分当然应该留原样).
如何实现这一目标?
该array_merge功能将为您完成此操作:
$prod_new = array_merge($prod1, $prod2);
Run Code Online (Sandbox Code Playgroud)
从文档:
如果输入数组具有相同的字符串键,则该键的后一个值将覆盖前一个键.
或者,你可以使用的+运营商,这将给你相同的结果:
$prod_new = $prod1 + $prod2;
Run Code Online (Sandbox Code Playgroud)
的
+运算符返回附加到左手阵列右手阵列; 对于存在于两个数组中的键,将使用左侧数组中的元素,并且将忽略右侧数组中的匹配元素.