微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

如何将 2 个关联数组与不同的键组合在一起,以及如何在输入中获取结果数组以在 PHP 中给出顺序?

如何解决如何将 2 个关联数组与不同的键组合在一起,以及如何在输入中获取结果数组以在 PHP 中给出顺序?

我有 2 个数组,例如:

$arr1 =  [230] => Array
        (
            [itemid] => 230
            [name] => test1
            [category] => toy
            [price] => 10.00
        )

    [240] => Array
        (
            [itemid] => 240
            [name] => test2
            [category] => toy
            [price] => 8.00
        )
     [245] => Array
        (
            [itemid] => 245
            [name] => test3
            [category] => pen
            [price] => 5.00
        )
)
$arr2 =  [220] => Array
        (
            [itemid] => 220
            [name] => test4
            [category] => toy
            [price] => 20.00
        )

    [225] => Array
        (
            [itemid] => 225
            [name] => test5
            [category] => battery
            [price] => 4.00
        )
     [248] => Array
        (
            [itemid] => 248
            [name] => test6
            [category] => book
            [price] => 3.00
        )
     [236] => Array
        (
            [itemid] => 236
            [name] => test7
            [category] => pen
            [price] => 2.00
        )
)

我需要这样的结果:

$arr3 =  [230] => Array
        (
            [itemid] => 230
            [name] => test1
            [category] => toy
            [price] => 10.00
        )

    [240] => Array
        (
            [itemid] => 240
            [name] => test2
            [category] => toy
            [price] => 8.00
        )
     [245] => Array
        (
            [itemid] => 245
            [name] => test3
            [category] => pen
            [price] => 5.00
        )

  [220] => Array
        (
            [itemid] => 220
            [name] => test4
            [category] => toy
            [price] => 20.00
        )

    [225] => Array
        (
            [itemid] => 225
            [name] => test5
            [category] => battery
            [price] => 4.00
        )
     [248] => Array
        (
            [itemid] => 248
            [name] => test6
            [category] => book
            [price] => 3.00
        )
     [236] => Array
        (
            [itemid] => 236
            [name] => test7
            [category] => pen
            [price] => 2.00
        )
)

为此,我只是使用 array_merge

 $arr3= $arr1+ $arr2;

但在那之后我得到了这样的结果:

$arr3 =  [230] => Array
        (
            [itemid] => 230
            [name] => test1
            [category] => toy
            [price] => 10.00
        )

    [240] => Array
        (
            [itemid] => 240
            [name] => test2
            [category] => toy
            [price] => 8.00
        )
     

  [220] => Array
        (
            [itemid] => 220
            [name] => test4
            [category] => toy
            [price] => 20.00
        )

    [225] => Array
        (
            [itemid] => 225
            [name] => test5
            [category] => battery
            [price] => 4.00
        )
     [248] => Array
        (
            [itemid] => 248
            [name] => test6
            [category] => book
            [price] => 3.00
        )
       [245] => Array
        (
            [itemid] => 245
            [name] => test3
            [category] => pen
            [price] => 5.00
        )
     [236] => Array
        (
            [itemid] => 236
            [name] => test7
            [category] => pen
            [price] => 2.00
        )
)

我的问题是在合并了 2 个具有不同键的关联数组后,我混合了第一个数组和第二个数组,这意味着我需要像第一个数组的前三个数组元素一样的结果,然后是第二个数组的 4 个数组元素.
你能帮我吗,拜托,这对我有帮助

解决方法

您可以使用:

foreach($arr2 as $key => $record) {
    $arr1[$key] = $record;
}

这将导致您正在寻找的订单。

demo

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。