Req #60577 [Ver]: count(new EmptyIterator) returns 1

From: Date: Fri, 09 May 2014 14:14:04 +0000
Subject: Req #60577 [Ver]: count(new EmptyIterator) returns 1
References: 1  Groups: php.bugs 
Request: Send a blank email to php-bugs+get-185744@lists.php.net to get a copy of this message
Edit report at https://bugs.php.net/bug.php?id=60577&edit=1 ID: 60577 Updated by: levim@php.net Reported by: adam at sixohthree dot com Summary: count(new EmptyIterator) returns 1 Status: Verified 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 New Comment: 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 Previous Comments: ------------------------------------------------------------------------ [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

« previous php.bugs (#185744) next »