С помощью ответа Anzeo я немного обновил его, чтобы работать с другими свойствами и использовать его в условных выражениях. Взгляните:
function my_in_array($needle, $haystack = array(), $property){
foreach ($haystack as $object) {
if($object->$property == $needle){
return true;
} else {
return false;
}
}
}
foreach($foo as $bar) {
if(!my_in_array($bar, $arrWithObjects, 'id')) {
//do something
}
}
Надеюсь, это будет полезно для кого-то другого
РЕДАКТИРОВАТЬ
Я также нашел хороший прием для преобразования свойств объекта в массив, который может помочь в некоторых ситуациях.
foreach($arrWithObjects as $obj) {
$objProps = get_object_vars($obj);
if(in_array('My Name', $objProps)) {
//do something
}
}