2011-05-06 99 views
1

我有這兩個數組。我想陣列b合併到陣列1 product[0]下​​顯示,orangesproduct[1]lemonproduct[2]將陣列互相合並

$a = Array 
(
    [0] => Array 
    (
     [Customer] => Array 
     (
      [id] => 46714 
     ) 
     [Product] => Array 
     (
      [id] => 148 
     ) 
    )  
    [1] => Array 
    (
     [Customer] => Array 
     (
      [id] => 46714    
     ) 
     [Product] => Array 
     (
      [id] => 148 
     ) 
    ) 
    [2] => Array 
    (
     [Customer] => Array 
     (
      [id] => 46714       
     ) 
     [Product] => Array 
     (
      [id] => 148 
     ) 
    ) 
) 

$b = array(  
    [0] => apples 
    [1] => Orange 
    [2] => Lemon 
) 
+0

或者你剛剛忘記顯示'$ b'數組,因此無法回答問題嗎? – Orbling 2011-05-06 22:59:37

+0

替換它,ID旁邊的另一個字段(如果是,稱爲)? – Autolycus 2011-05-06 23:00:50

回答

2

喜歡的東西?

foreach ($b as $key => $value) 
{ 
    $a[$key]['product'][] = $value; 
} 

您需要指定您想要的結果以獲得更準確的猜測。

+2

嗯,在我的例子中使用$ k會更容易是的,哈哈:-) – 2011-05-06 23:05:02

3
foreach($b as $key => $value) { 
    $a[$key]['fruit'] = $value; 
} 

這會根據當前訂單添加它們。給你$ a [0] ['fruit'] =蘋果,$ a [1] ['fruit'] =橙和$ a [2] ['fruit'] =「檸檬」。我不確定這是否是你需要的,不能完全理解你的問題。

+0

在這種情況下'$ k'將等於'$ i',並且必須潛在地跳過值,所以我將免去'$ i'完全。我會對此表示讚賞,但不會使用單字母變量,但使用'['fruit']'鍵實際上比其他答案更好。 – Orbling 2011-05-06 23:06:42

+0

是的,我注意到jeroen的$ k部分。我已經用筆記更改了代碼。 – 2011-05-06 23:09:31

+0

這樣比較好。 :-) – Orbling 2011-05-06 23:09:44

0

你可以按照其他的例子,但是你可以通過修改$ B陣列和合並兩個饒了自己不需要的迭代:

// Modify your $b array to mimic the structure of your $a array 
$b = array(  
    [0] => array('Product' => 'apples'), 
    [1] => array('Product' => 'Orange'), 
    [2] => array('Product' => 'Lemon') 
); 

// Merge the two arrays into $a 
$a = array_merge($a, $b); 

一般來說,最好使用PHP的編譯後的代碼,因爲它會出來執行你可以編寫自己的任何代碼。