检查两个 foreach 中的值是否相等并相应地显示 php 中的错误

checking if values in both foreach is equal and displaying accordingly giving error in php

我有两个数组,我在其中使用 foreach 来显示结果,这里我想要的是检查第一个数组中的 id 是否存在于第二个数组中,如果不存在则显示它们,我做了以下代码:

    foreach($name as $n){

            foreach($response as $r){

            if ($n->id != $r->cid) {
      
      
      echo $n->id;
      
      }
      }
      }

这里的问题是,如果只有一个值相等,那么它会正常,但如果 2 个值相等,那么所有结果都会显示 2 次,如果是 3,那么结果会显示 2 次,依此类推。谁能告诉我如何解决这个问题,在此先感谢

你可以试试:

$tmpIds = [];
foreach($name as $n){
    foreach($response as $r){
        if ($n->id != $r->cid) {
            if(!in_array($n->id, $tmpIds)){
                $tmpIds[] = $n->id;
                echo $n->id;
            }
        }
    }
}

Example