php两个数组合并保存键,PHP数组在同一键上合并两个数组

理想情况下,我希望以一种方式格式化两个数组,array_merge_recursive从而简单地合并两个数组而不必大惊小怪。

但是我确实提出了一个使用过的解决方案array_map。

$array1 = array(

array("Camera1" => "192.168.101.71"),

array("Camera2" => "192.168.101.72"),

array("Camera3" => "192.168.101.74"),

);

$array2 = array(

array("Camera1" => "VT"),

array("Camera2" => "UB"),

array("Camera3" => "FX")

);

$results = array();

array_map(function($a, $b) use (&$results) {

$key = current(array_keys($a));

$a[$key] = array('ip' => $a[$key]);

// Obtain the key again as the second array may have a different key.

$key = current(array_keys($b));

$b[$key] = array('name' => $b[$key]);

$results += array_merge_recursive($a, $b);

}, $array1, $array2);

var_dump($results);

输出为:

array (size=3)

'Camera1' =>

array (size=2)

'ip' => string '192.168.101.71' (length=14)

'name' => string 'VT' (length=2)

'Camera2' =>

array (size=2)

'ip' => string '192.168.101.72' (length=14)

'name' => string 'UB' (length=2)

'Camera3' =>

array (size=2)

'ip' => string '192.168.101.74' (length=14)

'name' => string 'FX' (length=2)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值