两个数组匹配它们并显示不匹配
我有两个数组$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>';
}
}
if(count($jlist)>0 && count($vlist)>0)
{
$new_list=array_diff($jlist,$vlist);
foreach($new_list as $j)
{
echo '<option>'.$j.'</option>';
}
}
你可以添加一些评论吗?它有助于理解你的建议。 – Yaroslav 2013-02-14 10:43:26
您的评论不尊重。事实上,你没有做任何自由职业,甚至更好,你应该帮助社区。当然,你可以自由地不留下任何评论,但你正在回答帮助其他人是的?如果你解释你在做什么,你的答案会更清晰。检查这个[metaSO问题](http://meta.stackexchange.com/questions/7656/how-do-i-write-a-good-answer-to-a-question)和[Jon Skeet:Coding Blog]( http://msmvps.com/blogs/jon_skeet/archive/2009/02/17/answering-technical-questions-helpfully.aspx)如何给出正确的答案。 – Yaroslav 2013-02-14 11:10:21
检查出来
foreach($jlist as $j)
{
if(!in_array($j,$vlist))
echo $j."<br/>";
}
小心添加一些评论?这将有助于OP和未来的访问者了解您的代码。 – Yaroslav 2013-02-14 10:43:58
如果您正在寻找其不在第二个中的第一个数组中的元素,你应该尝试array_diff($jlist, $vlist)
颠倒排列顺序,如果你想第二个阵列中不存在于第一个阵列中的元素。
如果你正在寻找的,那么您只需要合并两个结果,如array_merge(array_diff($jlist, $vlist), array_diff($vlist, $jlist))
所以你试过和array_diff()? (http://www.php.net/manual/en/function.array-diff.php) – 2013-02-14 10:20:58
不,但我会研究, – Brobina 2013-02-14 10:21:57
尝试'array_diff()'函数 – 2013-02-14 10:28:58