两个数组匹配它们并显示不匹配

时间:2013-02-14 10:20:05

标签: php arrays

我有两个数组$jlist$vlist,我需要显示不匹配的条目。

if($jlist==$vlist) echo ''; 
else echo $vlist;

我的循环尝试与使用foreach方法一起失败了。请指教。

if(count($jlist)>0)&&(count($vlist)>0)
{
    foreach($jlist as $j)&&($vlist as $v)
    {
        if($v==$j)echo '';
        else 
            echo '<option>'.$v.'</option>';
    }
}

3 个答案:

答案 0 :(得分:1)

if(count($jlist)>0 && count($vlist)>0)
{
  $new_list=array_diff($jlist,$vlist);
  foreach($new_list as $j)
  {
    echo '<option>'.$j.'</option>';
  }
}

答案 1 :(得分:1)

如果您正在寻找第一个数组中不在第二个数组中的元素,您应该尝试array_diff($jlist, $vlist)反转数组顺序,如果您想要第二个数组中第一个不存在的元素之一。

如果您正在寻找两者,那么您只需合并两个结果,例如array_merge(array_diff($jlist, $vlist), array_diff($vlist, $jlist))

答案 2 :(得分:0)

检查出来

foreach($jlist as $j)
{

    if(!in_array($j,$vlist))
            echo $j."<br/>";

}