2

我有两个数组$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>';
    }
}
4

3 回答 3

4
if(count($jlist)>0 && count($vlist)>0)
{
  $new_list=array_diff($jlist,$vlist);
  foreach($new_list as $j)
  {
    echo '<option>'.$j.'</option>';
  }
}
于 2013-02-14T10:26:31.030 回答
3

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

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

于 2013-02-14T10:32:37.240 回答
0

一探究竟

foreach($jlist as $j)
{

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

}
于 2013-02-14T10:24:25.977 回答