2015-04-28 97 views
-5

我有這個,請...結合陣列到陣列中有數組,PHP

$a = array('pic1','pic2','pic3','pic4'); 

$b = array(array('16'),array('4','12'),array('8','8'),array('7','9')); 

我想這樣的結果是陣列組合:

pic1-16 

pic2-4 

pic3-12 

pic4-8 

etc 
etc 

請幫助我的人!

+0

你嘗試過什麼..?請向我們展示您的代碼... – sheshadri

+0

for和foreach,但是當$ b數組得到('4','12')時,我得到了pic2-pic2- –

+0

當用完$ a之前用完數值時會發生什麼情況美元的價值? –

回答

1

爲了簡單起見,讓我們將第二個數組變成單維數組。

$a = array('pic1', 'pic2', 'pic3', 'pic4'); 
    $b = array(array('16'), array('4', '12'), array('8', '8'), array('7', '9')); 

    $bFlat = array(); 
    // flatten the second array 
    array_walk_recursive($b, function($v) use(&$bFlat) { $bFlat[] = $v; }); 

    for($i = 0; $i < count($a) && $i < count($bFlat); $i++) { 
    print "{$a[$i]}-{$bFlat[$i]}\n"; 
    } 

輸出:

# php tt.php 
pic1-16 
pic2-4 
pic3-12 
pic4-8 
+0

是的,正準備編輯我的第二個數組。好答案。 –

0
for ($i = 0; $i <= count($a); $i++) 
{ 
    $string = $a[$i]." -"; 
    for ($j = 0; $j <= count($b); $j++) 
    { 
     $string += " ".$b[$j]; 
    { 
    echo $string; 
} 

這應該至少可以幫助您開始。

+0

不是所有的$ b's元素都有多個元素 –

+0

射擊。這是for循環中的for循環,然後...我會在第二秒更新。沒有抓住那個 –

+0

thx花花公子,但$ b不僅僅是一個數組,它的數組進入一個數組... –