Req #60577 [Ver->Asn]: count(new EmptyIterator) returns 1
Edit report at https://bugs.php.net/bug.php?id=60577&edit=1
ID: 60577
Updated by: kalle@php.net
Reported by: adam at sixohthree dot com
Summary: count(new EmptyIterator) returns 1
-Status: Verified
+Status: Assigned
Type: Feature/Change Request
Package: SPL related
PHP Version: 5.4SVN-2011-12-20 (SVN)
Assigned To: levim
Block user comment: N
Private report: N
Previous Comments:
------------------------------------------------------------------------
[2014-05-09 14:13:52] levim@php.net
To be quite honest, this is the same exact 'bug'. The difference is really that some other
Iterators implement Countable so you would expect an EmptyIterator to be Countable and return its
count as 0.
The reason I haven't 'fixed' this bug yet is because there are fewer Iterators that
implement Countable than I initially thought. I'm not quite sure what to do and have been
working on other issues and features, notably adding return types: https://wiki.php.net/rfc/returntypehinting
------------------------------------------------------------------------
[2014-05-09 08:16:58] iam4webwork at hotmail dot com
If this is a bug, then why is #46322 not a bug?
------------------------------------------------------------------------
[2014-03-06 13:03:05] narf at devilix dot net
Technically not a duplicate, but very similar to #43650.
https://bugs.php.net/bug.php?id=43650
------------------------------------------------------------------------
[2013-09-12 20:33:14] levim@php.net
I confirmed this for versions 5.1.0 - 5.5.3.
------------------------------------------------------------------------
[2011-12-20 20:17:50] adam at sixohthree dot com
Description:
------------
As an object that simulates a list of zero items, count(new EmptyIterator) should
return zero.
Test script:
---------------
<?php
$it = new EmptyIterator;
var_dump(count($it));
Expected result:
----------------
int(0)
Actual result:
--------------
int(1)
------------------------------------------------------------------------
--
Edit this bug report at https://bugs.php.net/bug.php?id=60577&edit=1
Thread (8 messages)