我有两个阵列,我想加入他们。两个数组都是foreach循环的产物。第一个是:
$cleanNums[] = array(
'01'=>$numbers[1],
'02'=>$numbers[2],
'03'=>$numbers[3],
'04'=>$numbers[4],
'05'=>$numbers[5],
);
,第二个是:
$newDates[] = array(
'day'=>$cleanDate[1],
'month'=>$cleanDate[2],
'year'=>$cleanDate[3],
'draw'=>$cleanDate[6],
);
使用array_merge $weeklyValues = array_merge($newDates,$cleanNums);
我得到了:
Array
(
[0] => Array
(
[day] => 1st
[month] => March
[year] => 2017
[draw] => 660
)
[1] => Array
(
[01] => 3
[02] => 23
[03] => 40
[04] => 20
[05] => 28
)
)
我希望我的输出内容如下:
Array
(
[0] => Array
(
[day] => 1st
[month] => March
[year] => 2017
[draw] => 660
[01] => 3
[02] => 23
[03] => 40
[04] => 20
[05] => 28
)
)
答案 0 :(得分:0)
请使用此代码:
$resultArray = array(
0 => current($newDates) + current($cleanNums)
);
print_r($resultArray);
答案 1 :(得分:0)
array_merge
是实现目标的方式http://php.net/manual/en/function.array-merge.php。输出错误的原因在于您定义变量的方式,例如:
$cleanNums[] = array(...)
将导致嵌套数组:
array(1) {
[0]=>
array(5) {
...
}
}
要避免它,要么改变作业的方式:
$cleanNums = array(...)
或者您提供array_merge
参数的方式:
$weeklyValues = array_merge($newDates[0],$cleanNums[0]);
当然,$newDates
需要同样适用。
答案 2 :(得分:0)
我假设$ cleanNums和$ newDates是多维数组,并且会获得更多[]值;
$weeklyValues = array();
foreach($cleanNums as $array)
{
$weeklyValues = array_merge($weeklyValues,$array);
}
foreach($newDates as $array)
{
$weeklyValues = array_merge($weeklyValues,$array);
}
print_r($weeklyValues);
答案 3 :(得分:0)
$count = count($newDates);
$mergedArray = array();
for($i=0; $i < $count; $i++){
//assuming both arrays have equal number of records
$mergedArray[] = current($newDates[$i]) + current($cleanNums[$i]);
}
var_dump($mergedArray);