2011-11-27 4 views
1

2 array datas, ("a","b","c")("x","y","z")인데 어떻게 혼합했는지 결과는 (ax)|(ay)|(az)|(bx)|(by)|(bz)|(cx)|(cy)|(cz)입니까? (각각 $array1 + $array2가 새 단어로 결합 됨).PHP 2 foreach 결과가

$array1 = array("a","b","c"); 
foreach($array1 as $data1){ 

} 
$array2 = array("x","y","z"); 
foreach($array2 as $data2){ 

} 
//$output = '(ax)|(ay)|(az)|(bx)|(by)|(bz)|(cx)|(cy)|(cz)'; 

답변

6

당신은 중첩 루프 사용할 수 있습니다 :

$items = array(); 

foreach($array1 as $a) 
{ 
    foreach($array2 as $b) 
    { 
     $items[] = '(' . $a . $b . ')'; 
    } 
} 
echo implode('|', $items); // (ax)|(ay)|(az)|(bx)|(by)|(bz)|(cx)|(cy)|(cz) 
7
<?php 

$array1 = array("a","b","c"); 
$array2 = array("x","y","z"); 

$array3 = array(); 

foreach($array1 as $data1){ 
    foreach($array2 as $data2){ 
     $array3[] = "($data1$data2)"; 
    } 
} 

echo implode('|', $array3); 

// (ax)|(ay)|(az)|(bx)|(by)|(bz)|(cx)|(cy)|(cz) 
8
$array = array(); 
$array1 = array("a","b","c"); 
$array2 = array("x","y","z"); 
foreach($array1 as $data1){ 
foreach($array2 as $data2){ 
    $array[] = '('.$data1.$data2.')'; 
} 
} 
echo implode('|', $array);