2017-03-31 108 views
0

,所以我有2個職位來爲數組:結合兩個數組

$ POST1 Array ([0] => Tipul1 [1] => tipul2 [2] => tipul3)

$ POST2 Array ([0] => cant1 [1] => cant2 [2] => cant3)

我想實現的是在DB發送這些(查詢不會是一個這種格式的問題)(格式是一個問題,我的方式串聯值):

Tipul 1 - cant1 | Tipul 2 - cant2 | Tipul 3 - cant3 

所以,我怎麼能結合這些陣列,並添加每個值之間有?

使用

foreach ($tip as $tipq) { 

    foreach ($cantitate as $cantitateq) { 

     echo $tipq.''.$cantitateq. "<br>"; 

    } 
} 

我會得到這個(這是有道理的): Tipul1cant1 Tipul1cant2 Tipul1cant3 tipul2cant1 tipul2cant2 tipul2cant3 tipul3cant1 tipul3cant2 tipul3cant3

+0

'$ arr = array_combine($ post1,$ post2)'給出'array('Tipul1'=>'cant1',...);' – JustOnUnderMillions

+0

只要你沒有顯示任何嘗試,我只會給你提示:你有將'Tipul1'重新格式化爲'Tipul 1',...並將所有值與'$ arr [] =「$ value1 - $ value2」;'合併並收集,一個數組,那麼該數組可以是'implode('| ',$ array);'那麼你有你想要的 – JustOnUnderMillions

回答

1

你遍歷元素來組合它們。看看這個簡單的三步例如:

<?php 
$input = array_combine(
    ['Tipul1', 'Tipul2', 'Tipul3'], 
    ['cant1', 'cant2', 'cant3'] 
); 
$output = []; 
array_walk($input, function($val, $key) use (&$output) { 
    $output[] = $key . ' - ' . $val; 
}); 
var_dump(implode(' | ', $output)); 

輸出顯然是:

字符串(48) 「Tipul1 - CANT1 | Tipul2 - cant2 | Tipul3 - cant3」