2012-12-03 22 views
-2

我嘗試了很多次比較,但沒有工作。PHP比較兩個數組中的項目?

我也曾嘗試使用和array_diff或array_intersect但是......

$a = array(
      array('1','11'), 
      array('2','22'), 
      array('3','33'), 
      array('4','44'), 
    ); 

$b = array(
    array('2','22'), 
    array('3','33') 
); 

for($j = 0;$j < count($a);$j++) { 
    for($v = 0;$v < count($b);$v++) { 
     if($b[$v][0] == $a[$j][0]) { 
      echo 1.' '; 
     } else { 
      echo 0.' '; 
     } 
    } 
} 

結果:

+1

您將需要約你想達到什麼目的更加明確。 – Alex

+0

由於您正在運行循環循環,因此您無法獲得'4'回波'0 1 1 0',因此您可以打印出8個回波值(例如:'0 0 1 0 0 1 0 0')。 –

回答

1

您當前的腳本返回

0 0 1 0 0 1 0 0 

爲了讓您所需的輸出,你應該嘗試:

foreach ($a as $v) 
{ 
    in_array($v, $b) ? print("1 ") : print("0 "); 
} 

輸出

0 1 1 0 

See Live Demo

+0

感謝幫助:) – Pan

+0

歡迎訪問:http://meta.stackexchange.com/questions/16721/how-does-accept-rate-work關於如何接受 – Baba