计算返回空的数组中的值

时间:2017-09-27 14:01:06

标签: php arrays

我有一个使用print_r($user_ids);输出打印的数组:

Array ( [0] => stdClass Object ( [user_id] => 2 ) ) 

我尝试编写以下内容,我正在尝试计算有多少user_id,所以这应该打印1但是打印就好像数组是emptry一样

print_r(array_count_values($user_ids));

1 个答案:

答案 0 :(得分:0)

如果您只需要对象总数,那么count()会按照注释所指出的那样进行。

如果您特别需要计算或专门访问user_id属性(例如,没有对象具有ID),则可以方便地使用array_column()

$user_ids = [
    (object) [ 'user_id' => 1 ],
    (object) [ 'user_id' => 2 ],
    (object) [],
];

var_dump( count( $user_ids ) ); // 3
var_dump( count( array_column( $user_ids, 'user_id' ) ) ); // 2