问题描述
我有两个数组,我想将每个数组合并为一个数组。我该如何完成这段代码以及我在这里遇到的错误:
以下是我的代码:
var httpResponse = (HttpWebResponse) httpWebRequest.GetResponse();
合并这两个数组后,我得到以下结果:
$intro = array( array( "name"=>"Peter","age"=>"40","location"=>"USA" ),array("name"=>"Mike","age"=>"55","location"=>"USA")
);
$bikes = array( array( "brand"=>"Hero","cc"=>"150","rpm"=>"8500"),array( "brand"=>"Honda","rpm"=>"9500")
);
$result = array_merge($intro,$bikes);
print_r($result);
但是我想得到以下样式:
Array
(
[0] => Array
(
[name] => Peter
[age] => 40
[location] => USA
)
[1] => Array
(
[name] => Mike
[age] => 55
[location] => USA
)
[2] => Array
(
[brand] => Hero
[cc] => 150
[rpm] => 8500
)
[3] => Array
(
[brand] => Honda
[cc] => 150
[rpm] => 9500
)
)
非常感谢专家的任何帮助。
谢谢
解决方法
如果您希望使用键将它们合并并对齐,则可以简单地使用ol'foreach
:
foreach ($intro as $k => $v) {
$result[] = array_merge($v,$bikes[$k]);
}
或者使用array_map
的单线:
$result = array_map('array_merge',$intro,$bikes);
,
array_map
带有自定义回调可以提供帮助:
$intro = array(
array( "name"=>"Peter","age"=>"40","location"=>"USA" ),array("name"=>"Mike","age"=>"55","location"=>"USA")
);
$bikes = array(
array( "brand"=>"Hero","cc"=>"150","rpm"=>"8500"),array( "brand"=>"Honda","rpm"=>"9500")
);
$result = array_map(function($a,$b) {
// here you merge every subarray from
// `$intro` with subarray from `$bikes`
return array_merge($a,$b);
},$bikes);
print_r($result);
提琴here。
,您可以这样做:
<div class="left-div"> left div <br><br><br><br><br><br><br><br><br><br>left div <br> <br> <br><br> <br><br><br><br><br><br> sdkasd</div>
<div class="right-div">
<div class="stick-div">
sticked to one place
</div>
</div>
结果:
foreach ($intro as $k => $v) {
$result[] = array_merge($v,$bikes[$k]);
}