我们如何在索引的基础上用一个数组向另一个数组填充缺失的值


how we fill missing values with one array to another on the basis of index

你好,先生,下面是我的多维数组,其中包含特定索引上的一些缺失值

$array1=数组([2] =>阵列([1] =>2[2] =>4[3] =>9)

[3] => Array
    (
        [1] => 4
        [2] => 6
        [3] => 
    )
[4] => Array
    (
        [1] => 4
        [2] => 6
        [3] => 7
    )
[5] => Array
    (
        [1] => 2
        [2] => 4
        [3] => 
    )

)

及以下是我的第二个数组我想把索引3和4的array2值放入$array1索引3和4.但我不想替换整个数组值。我只想替换$array1中为空的值

$array2=数组([3] =>阵列([1] =>2[2] =>4[3] =>9)

[5] => Array
    (
        [1] => 4
        [2] => 6
        [3] => 7
    )

)

以下所需输出,其中我显示单个qoutes中的替换值)

$array1=数组([2] =>阵列([1] =>2[2] =>4[3] =>9)

[3] => Array
    (
        [1] => 4
        [2] => 6
        [3] =>  '9'
    )
[4] => Array
    (
        [1] => 4
        [2] => 6
        [3] => 7
    )
[5] => Array
    (
        [1] => 2
        [2] => 4
        [3] =>   '7'
    )

这就是:

$array1 = array("2"=> array("1"=>"2", "2"=>"4", "3"=>"9"),
                "3"=> array("1"=>"4", "2"=>"6", "3"=>""),
                "4"=> array("1"=>"4", "2"=>"6", "3"=>"7"),
                "5"=> array("1"=>"2", "2"=>"4", "3"=>"")
                );
$array2 = array("3"=> array("1"=>"2", "2"=>"4", "3"=>"9"),
                "5"=> array("1"=>"4", "2"=>"6", "3"=>"7")
                );
foreach ($array1 as $key => $value) {
    foreach ($value as $key2 => $value2) {
        if($value2 == ""){
            $array1[$key][$key2] = $array2[$key][$key2];
        }
    }
}
echo '<pre>';
print_r($array1);
echo '</pre>';

输出:

Array
(
    [2] => Array
        (
            [1] => 2
            [2] => 4
            [3] => 9
        )
    [3] => Array
        (
            [1] => 4
            [2] => 6
            [3] => 9
        )
    [4] => Array
        (
            [1] => 4
            [2] => 6
            [3] => 7
        )
    [5] => Array
        (
            [1] => 2
            [2] => 4
            [3] => 7
        )
)