0

これらの 2 つの配列を 1 つの配列にマージしたいのですが、理解するのに苦労しています。コードの 2 つのスニペットについては、以下を参照してください。

最初の配列:

$propSelectMaxRow = max(array_keys($property_select_email));
$i = 0;
foreach($property_queue as $r) {
    if ($select_type == 3 || $select_type == 4 || $select_type == 5) {
        $i = $i + 1;
        $property_select_email[$propSelectMaxRow + $i] = $r;
    }
}

2 番目の配列:

$propSelectMaxRow = max(array_keys($property_select_email));
$i = 0;
foreach($property_select as $r) {
    if ($select_type == 1 || $select_type == 2 || $select_type == 4 || $select_type == 5) {
        $i = $i + 1;
        $property_select_email[$propSelectMaxRow + $i] = $r;
    }
}

編集:最終的な配列を次のようにしたいと思います:

最初の配列形式:

Array ( 
    [1] => Array ( [code] => PPJ3 [street] => 34412 Fake Street [city] => Detroit [state] => MI [zip] => 48223 ) 

    [2] => Array ( [code] => PLK3 [street] => 73517 Fake Street [city] => Detroit [state] => MI [zip] => 48223 ) 

    [3] => Array ( [code] => HYK2 [street] => 55224 Fake Street [city] => Detroit [state] => MI [zip] => 48208 ) 
 )

2 番目の配列形式:

Array ( 
    [1] => Array ( [code] => JAK932 [street] => 353242 Fake Street [city] => Detroit [state] => MI [zip] => 48223 ) 

    [2] => Array ( [code] => JA232 [street] => 7432 Fake Street [city] => Detroit [state] => MI [zip] => 48223 ) 
 )   

最終的な配列形式は次のとおりです。

Array ( 
    [1] => Array ( [code] => PPJ3 [street] => 34412 Fake Street [city] => Detroit [state] => MI [zip] => 48223 ) 

    [2] => Array ( [code] => PLK3 [street] => 73517 Fake Street [city] => Detroit [state] => MI [zip] => 48223 ) 

    [3] => Array ( [code] => HYK2 [street] => 55224 Fake Street [city] => Detroit [state] => MI [zip] => 48208 ) 

    [4] => Array ( [code] => JAK932 [street] => 353242 Fake Street [city] => Detroit [state] => MI [zip] => 48223 ) 

    [5] => Array ( [code] => JA232 [street] => 7432 Fake Street [city] => Detroit [state] => MI [zip] => 48223 ) 
 )
4

2 に答える 2

1

次のようにコードを改善する必要がある場合があります。

//$propSelectMaxRow = max(array_keys($property_select_email)); // no need
//$i = 0; //no need
foreach($property_queue as $r) {
    if ($select_type == 3 || $select_type == 4 || $select_type == 5) {
        //$i = $i + 1;
        $property_select_email[] = $r;
    }
}

同様に、2 番目のアレイを構築します。2 番目のループは、最初のループの最後に配列を追加します (したがって、それらは自動マージされます)。

于 2013-04-26T14:08:08.910 に答える
-1

array_mergeを使用するだけでよいようです

于 2013-04-26T02:28:06.617 に答える