簡體   English   中英

合並兩個多維關聯數組

[英]Merge two multidimensional associative arrays

我想將這兩個數組合並為1個數組,但是一直很難弄清楚。 請參見下面的兩個代碼片段:

第一個數組:

$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;
    }
}

第二個數組:

$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 ) 
 )

第二數組格式:

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 ) 
 )

您可能需要像下面這樣改善代碼:

//$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;
    }
}

同樣,構建第二個數組。 第二個循環將在第一個循環的末尾附加數組(因此它們將被自動合並)。

看起來您只需要使用array_merge

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM