带数字键的 PHP array_merge [英] PHP array_merge with numerical keys

查看:36
本文介绍了带数字键的 PHP array_merge的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

如何使 array_merge() 覆盖两个数组中具有不同值但具有相同键索引的两个键?

How can make it so array_merge() overwrites two keys with different values but same key index from two arrays?

例如合并:

<代码>[0] =>'随便'

<代码>[0] =>'随便',[1] =>'a', [2] =>'b'

应该产生

<代码>[0] =>'随便',[1] =>'a', [2] =>'b'

基本上,如果数组具有字符串键,我希望 array_merge 具有相同的行为方式...

Basically I want array_merge to bahave the same way it behaves if the arrays have string keys...

推荐答案

使用 + 运算符.

比较 array_merge+ 运算符:

Compare array_merge to + operator:

<?php

$a1 = array(0=>"whatever",);
$a2 = array(0=>"whatever",1=>"a",2=>"b");

print_r(array_merge($a1,$a2));
print_r($a1+$a2);
?>

输出:

Array
(
    [0] => whatever
    [1] => whatever
    [2] => a
    [3] => b
)
Array
(
    [0] => whatever
    [1] => a
    [2] => b
)

+ 运算符 仍然 可以在关联数组的数字键乱序时起作用:

The + operator still works if your associative array has the numerical keys out-of-order:

<?php

$a1 = array(0=>"whatever",);
$a2 = array(1=>"a",0=>"whatever",2=>"b");

print_r(array_merge($a1,$a2));
print_r($a1+$a2);
?>

输出:

Array
(
    [0] => whatever
    [1] => a
    [2] => whatever
    [3] => b
)
Array
(
    [0] => whatever
    [1] => a
    [2] => b
)

注意array_merge这种的情况下会创建一个新的键.不可取...

Notice array_merge in this case creates a new key. Not desirable...

这篇关于带数字键的 PHP array_merge的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆