php – 按索引合并两个数组
发布时间:2020-12-13 14:05:02 所属栏目:PHP教程 来源:网络整理
导读:好吧,如果觉得这应该是非常简单并且通过像array_merge()或array_merge_recursive这样的函数来完成,但我无法弄明白.我有两个简单的数组,如下面的(简化)示例.我只是想根据它们的索引将它们合并到一个数组中. $array 1: Array ( [0] = Array ( [ID] = 201 [lat
好吧,如果觉得这应该是非常简单并且通过像array_merge()或array_merge_recursive这样的函数来完成,但我无法弄明白.我有两个简单的数组,如下面的(简化)示例.我只是想根据它们的索引将它们合并到一个数组中.
$array 1: Array ( [0] => Array ( [ID] => 201 [latLng] => 45.5234515,-122.6762071 ) [1] => Array ( [ID] => 199 [latLng] => 37.7931446,-122.39466520000002 ) ) 等等… $array2: Array ( [0] => Array ( [distance] => 1000 [time] => 10 ) [1] => Array ( [distance] => 1500 [time] => 15 ) ) $desiredResult: Array ( [0] => Array ( [ID] => 201 [latLng] => 45.5234515,-122.6762071 [distance] => 1000 [time] => 10 ) [1] => Array ( [ID] => 199 [latLng] => 37.7931446,-122.39466520000002 [distance] => 1500 [time] => 15 ) ) 当我尝试使用合并函数合并这些时,我只能得到这个: $unDesiredResult: Array ( [0] => Array ( [ID] => 201 [latLng] => 45.5234515,-122.39466520000002 ) [2] => Array ( [distance] => 1000 [time] => 10 ) [3] => Array ( [distance] => 1500 [time] => 15 ) ) 我需要循环将第二组推入第一组,还是可以使用现有功能完成?
我不认为有一个功能为你做这个,你将不得不循环.
$result = array(); foreach($array1 as $key=>$val){ // Loop though one array $val2 = $array2[$key]; // Get the values from the other array $result[$key] = $val + $val2; // combine 'em } 或者您可以将数据推送到$array1,因此您需要创建第3个数组: foreach($array1 as $key=>&$val){ // Loop though one array $val2 = $array2[$key]; // Get the values from the other array $val += $val2; // combine 'em } (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |