检查整数是否在对象属性数组中


Check if integer is in objects attribute array

我有以下结构:

$foo_array = array(
  [0] => object(foo) {
    'id' => 1
  }
  [1] => object(foo) {
    'id' => 2
  }
)

我想检查一下,这个数组的id属性中是否存在int(1(。我该怎么做?

我一直在考虑类似in_array(1, $foo_array)的东西,但它当然不起作用。

这应该适用于您:

只需使用array_reduce(),例如

array_reduce($arr, function($keep, $v){
    if($v->id == 1)
        return $keep = TRUE;
    return $keep;
}, FALSE);

您可以使用array_column作为(PHP>=5.5(

in_array(1, array_column($foo_array,'id'))