簡體   English   中英

如何在PHP中合並多個數組

[英]How to merge many array in PHP

我有誰顯示這樣的結果數組

Array
(
    [0] => AED
)
Array
(
    [0] => 1
)
Array
(
    [0] => 4071.64
)
Array
(
    [0] => 3603.98
)
Array
(
    [0] => AUD
)
Array
(
    [0] => 1
)
Array
(
    [0] => 10151.11
)
Array
(
    [0] => 9964.65
)
Array
(
    [0] => CHF
)
Array
(
    [0] => 1
)
Array
(
    [0] => 14162.66
)
Array
(
    [0] => 13912.70
)
Array
(
    [0] => CNY
)
Array
(
    [0] => 1
)
Array
(
    [0] => 2177.73
)
Array
(
    [0] => 2024.07
)
Array
(
    [0] => EUR
)
Array
(
    [0] => 1
)
Array
(
    [0] => 16080.01
)
Array
(
    [0] => 15813.89
)
Array
(
    [0] => GBP
)
Array
(
    [0] => 1
)
Array
(
    [0] => 18476.74
)
Array
(
    [0] => 18180.11
)
Array
(
    [0] => HKD
)
Array
(
    [0] => 1
)
Array
(
    [0] => 1802.15
)
Array
(
    [0] => 1778.28
)
Array
(
    [0] => JPY
)
Array
(
    [0] => 1
)
Array
(
    [0] => 128.40
)
Array
(
    [0] => 125.26
)
Array
(
    [0] => NZD
)
Array
(
    [0] => 1
)
Array
(
    [0] => 9711.35
)
Array
(
    [0] => 9529.10
)
Array
(
    [0] => SAR
)
Array
(
    [0] => 1
)
Array
(
    [0] => 3765.13
)
Array
(
    [0] => 3727.50
)
Array
(
    [0] => SGD
)
Array
(
    [0] => 1
)
Array
(
    [0] => 10496.44
)
Array
(
    [0] => 10308.02
)
Array
(
    [0] => USD
)
Array
(
    [0] => 1
)
Array
(
    [0] => 14120.00
)
Array
(
    [0] => 13980.00
)

我想將該數組合並為一個數組。 我的問題是如何合並該數組,輸出必須像這樣

array(
       [0]=>array(
                   [0]=>AED
                   [1]=>1
                   [2]=>4071.64
                   [3]=>3603.98
                 )
       [1]=>array(
                   [0]=>AUD
                   [1]=>1
                   [2]=>10151.11
                   [3]=>9964.65
                 )
       [3]=>array(
                   [0]=>CHF
                   [1]=>1
                   [2]=>14162.66
                   [3]=>13912.70
                 )
       //and so on
)

或這樣的結果

Array
   (
    [0] => AED
    [1] => 1
    [2] => 4071.64
    [3] => 3603.98
    [4] => AUD
    [5] => 1
    [6] => 10151.11
    [7] => 9964.65
    [8] => CHF
    [9] => 1
    [10] => 14162.66
    [11] => 13912.70
    [12] => CNY
    [13] => 1
    [14] => 2177.73
    [15] => 2024.07
    [16] => EUR
    [17] => 1
    [18] => 16080.01
    [19] => 15813.89
    [20] => GBP
    [21] => 1
    [22] => 18476.74
    [23] => 18180.11
    [24] => HKD
    [25] => 1
    [26] => 1802.15
    [27] => 1778.28
    [28] => JPY
    [29] => 1
    [30] => 128.40
    [31] => 125.26
    [32] => NZD
    [33] => 1
    [34] => 9711.35
    [35] => 9529.10
    [36] => SAR
    [37] => 1
    [38] => 3765.13
    [39] => 3727.50
    [40] => SGD
    [41] => 1
    [42] => 10496.44
    [43] => 10308.02
    [44] => USD
    [45] => 1
    [46] => 14120.00
    [47] => 13980.00
)

兄弟姐妹們,請幫助我,我嘗試使用array_merge()和array_push(),但未顯示正確的結果。 謝謝

如果它始終是length == 4的內部數組,則可以使用array_chunk

$text = "AED 1 4071.64 3603.98 AUD 1 10151.11 9964.65";
$result= array_chunk( explode( ' ', $text ), 4 );
var_dump( $result );

這是一個php sandbox鏈接

試試這個代碼:

$array_data = array(

    array(
        AED, 1, 4071.64, 3603.98
    ),


    array(
        AUD, 1, 10151.11, 9964.65
    ),

    array(
        CHF, 1, 14162.66, 13912.70
    ),
);

$a = [];

foreach($array_data as $data) {
    $a = array_merge($a, $data);
}

暫無
暫無

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

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