[英]PHP object key value comparison of array indexes
我有兩個數組,其中兩個數組的索引都包含對象
$array1=array(1) {
[0]=> object(stdClass) (3) {
["aid"]=> string(1) "1"
["a_number"]=> string(1) "0"
["id_of"]=> string(1) "1"
}
}
$array2=array(3) {
[0]=> object(stdClass) (3) {
["id"]=> string(1) "1",
["number"]=> string(1) "0" ,
["flag"]=> string(1) "1" ,
["zflag"]=> string(1) "0" ,
["xflag"]=> string(1) "1"
} ,
[1]=> object(stdClass) (3) {
["id"]=> string(1) "2",
["number"]=> string(1) "2" ,
["flag"]=> string(1) "2" ,
["zflag"]=> string(1) "0" ,
["xflag"]=> string(1) "1"
},
[1]=> object(stdClass) (3) {
["id"]=> string(1) "3",
["number"]=> string(1) "3",
["flag"]=> string(1) "3" ,
["zflag"]=> string(1) "0" ,
["xflag"]=> string(1) "1"
}
}
我想將$array2
所有元素中的$id
鍵的值與$id_of
每個元素的$array1
$id_of
的值進行$id_of
,如果它不存在則返回$array1
的元素。 下面是我的代碼,但它不起作用
public function unanswered($array1,$array2){
if(!(empty($array2))){
$unanswered_arrays=array();
foreach($array1 as $b){
foreach($array2 as $a){
if($b->id != $a->id_of){
array_push($unanswered_arrays,(object)$b);
}
}
}
return $unanswered_arrays;
}
return $array1;
}
如果您使用的是unanswered($array1,$array2)
函數unanswered($array1,$array2)
則在 foreach 循環中將$array1
替換$array1
$array2
,反之亦然,或者傳遞unanswered($array2,$array1)
而不是。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.