2016-07-06 45 views
1

我有2个阵列阵回声的,各值一起

$name = Array ([1] => Potrait Color Correction [2] => Extraction) 
$number = Array ([1] => 060716113223-13555  [2] => 49101220160607-25222) 

我试图用第二个数组的索引1和与之相似打印第一阵列的索引1索引2

这是我的代码对于印刷(认为它是错的)

foreach ($name as $abc => $val) { 
    foreach ($number as $xyz => $valu) { 
     if(!in_array($val, $arr)){ 
      //echo $val." ";echo $valu; 
      $arr[]=$val;  
     }    
    } 
} 

问题是我的阵列数量仅打印第一个值越来越重复 两个

Potrait Color Correction 060716113223-13555 

提取060716113223-13555

IM looiking这样的事情来呼应

Potrait Color Correction 060716113223-13555 
Extraction 49101220160607-25222 
+0

如果数组是相同的顺序,那么你可以使用类似于: array_combine(); –

+0

是的,但事情是我需要的数据分开打印,因为我将需要它把它放到两个单独的列表 –

+0

你可以做一个foreach循环。第一个数组的值将是键,第二个数组的值将是其值。然后你可以打印它,只要你喜欢。 –

回答

0

只需使用从所述第一索引和仅foreach引用所述第二阵列这样

$name = Array ([1] => Potrait Color Correction [2] => Extraction) 
$number = Array ([1] => 060716113223-13555  [2] => 49101220160607-25222) 

代码

$arr = []; 
foreach ($name as $idx => $val) { 
    if(!in_array($val, $arr)){ 
     echo $val . ' ' . $number[$idx] . '<br>'; 
     $arr[]=$val;  
    }    
} 

或者,如果这是一个CLI脚本使用PHP_EOF代替<br>

+0

谢谢你的工作 –

1

用于循环访问多个阵列:

for($i=0;$i<count($name);$i++) { 
    echo $name[$i]." ".$number[$i]."<br />"; 
} 

输出:

Potrait Color Correction 060716113223-13555 

Extraction 49101220160607-25222