Checking for empty arrays: count vs empty
Posted
by Dan McG
on Stack Overflow
See other posts from Stack Overflow
or by Dan McG
Published on 2010-02-07T05:56:36Z
Indexed on
2010/05/26
0:01 UTC
Read the original article
Hit count: 309
This question on 'How to tell if a PHP array is empty' had me thinking of this question
Is there a reason that count
should be used instead of empty
when determining if an array is empty or not?
My personal thought would be if the 2 are equivalent for the case of empty arrays you should use empty
because it gives a boolean answer to a boolean question. From the question linked above, it seems that count($var) == 0
is the popular method. To me, while technically correct, makes no sense. E.g. Q: $var, are you empty? A: 7. Hmmm...
Is there a reason I should use count == 0
instead or just a matter of personal taste?
As pointed out by others in comments for a now deleted answer, count
will have performance impacts for large arrays because it will have to count all elements, whereas empty
can stop as soon as it knows it isn't empty. So, if they give the same results in this case, but count
is potentially inefficient, why would we ever use count($var) == 0
?
© Stack Overflow or respective owner