Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/275.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 两种类型的数组_Php_Arrays_Merge - Fatal编程技术网

Php 两种类型的数组

Php 两种类型的数组,php,arrays,merge,Php,Arrays,Merge,我有两个阵列: Array ( [0] => Mon [1] => Sun ) Array ( [0] => Array ( [date] => 2010-12-20 [hours] => 4 ) [1] => Array ( [date] => 2010-12-19 [hou

我有两个阵列:

Array
(
    [0] => Mon
    [1] => Sun
)

Array
(
    [0] => Array
        (
            [date] => 2010-12-20
            [hours] => 4
        )

    [1] => Array
        (
            [date] => 2010-12-19
            [hours] => 2.0
        )

)
如何将两者结合为:

Array
(
    [0] => Array
        (
            [date] => 2010-12-20
            [hours] => 4
     [day] => Mon
        )

    [1] => Array
        (
            [date] => 2010-12-19
            [hours] => 2.0
     [day] => Sun
        )

)
谢谢- 哈恩已更新

$secondArray[0]['day'] = $firstArray[0]; 
$secondArray[1]['day'] = $firstArray[1]; 
如果您确定它们的尺寸相同:

for($i = 0; $i < count($firstArray); $i++)
{
    $secondArray[$i]['day'] = $firstArray[$i]; 
}
for($i=0;$i
//将数组2复制到结果数组中。
$combled=$arr2;
//使用第一个数组中的值添加一个新键“day”。

对于($i=0;$i我想您可能想试试: $secondArray[i]['day']=$firstArray[i]

$dayOfWeek = array('Mon', 'Sun');
$dateWithHours = array( array('date'=>'12-20-2010', 'hours'=>4.0), array('date'=>'12-19-2010', 'hours'=>2.0) );

foreach(&$dateWithHours as $k=$v)
{
     $v['day'] = $dayOfWeek[$k];
}

记住这个符号。没有它,$v是一个不会改变原始值的副本。有了它,它是一个可以更改的引用。

合并数组不会得到您想要的结果-它们的顺序不同。我将给出一个答案,假设第一个数组将Sun放在Mon之前,但如果您不能依赖这一点,这是错误的ally更多的是一个约会问题,而不是数组问题@codaddict:非常感谢。效果很好。谢谢大家宝贵的建议。
$dayOfWeek = array('Mon', 'Sun');
$dateWithHours = array( array('date'=>'12-20-2010', 'hours'=>4.0), array('date'=>'12-19-2010', 'hours'=>2.0) );

foreach(&$dateWithHours as $k=$v)
{
     $v['day'] = $dayOfWeek[$k];
}