2010-08-09 76 views
1

數組排序我有像這樣3個數組,可以包含項目無限數量:問題合併/ PHP中

Weight Array ([0] => 20 [1] => 250 [2] => 400) 
Price Array ([0] => 1.20 [1] => 6.00 [2] => 9.50) 
Courier Array ([0] => DHL [1] => DHL [2] => UPS) 

我想將它們合併,並對其進行排序,像這樣:

Array (
     [0] => 20 
     [1] => 1.20 
     [2] => DHL 
     [3] => 250 
     [4] => 6.00 
     [5] => DHL 
     [6] => 400 
     [7] => 9.50 
     [8] => UPS 
    ) 

有沒有一個內置的PHP函數來做到這一點,還是我必須寫我自己的?

回答

5

沒有在功能上沒有必要,我想:

for ($i=0; $i<count($WeightArray); $i++) { 
    $TargetArray[] = $WeightArray[$i]; 
    $TargetArray[] = $PriceArray[$i]; 
    $TargetArray[] = $CourierArray[$i]; 
} 
+1

Upvoting這個答案,因爲其他人推薦array_merge不按原始問題的要求工作。 – 2010-08-09 14:00:40

+0

非常感謝。 – Zanzibar 2010-08-09 14:16:29

0

確實是有一個內置。

http://us3.php.net/array_merge

+0

array_merge只是將每個數組附加到前一個數組的末尾,我也想對它們進行排序。 – Zanzibar 2010-08-09 13:58:27

+0

啊對不起。讀得太快。你真的不想排序他們,你只是想使用數組0中的元素0,數組1中的元素0,數組中的元素0,數組1中的元素0 ... 對我來說,它看起來像你想要的跟蹤相應的重量,價格和信使。爲什麼不使用對象? – Siege898 2010-08-09 14:08:14

0
$newarray = array_merge($array1,$array2); 

這應該做的伎倆,只要你想添加更多的陣列,你可以添加儘可能多的參數。