From: dmitryshw at hotmail dot com Operating system: Montavista PHP version: 5.2.6 PHP Bug Type: Variables related Bug description: count(FALSE) returns 1
Description: ------------ As title states, count for FALSE return 1. I came across the problem when creating an array through unserialize and depending on count to tell me how many elements the array has to know if I should use it. This caused a bug when the string was empty, and unserialize faithfully returned FALSE. However the result was used by the subsequent code as an array because count returned 1. According to the docs, the parameter var must have a Countable interface... so FALSE has a Countable interface?? Reproduce code: --------------- $test = unserialize(NULL); print count($test); Expected result: ---------------- 0 Actual result: -------------- 1 -- Edit bug report at http://bugs.php.net/?id=46322&edit=1 -- Try a CVS snapshot (PHP 5.2): http://bugs.php.net/fix.php?id=46322&r=trysnapshot52 Try a CVS snapshot (PHP 5.3): http://bugs.php.net/fix.php?id=46322&r=trysnapshot53 Try a CVS snapshot (PHP 6.0): http://bugs.php.net/fix.php?id=46322&r=trysnapshot60 Fixed in CVS: http://bugs.php.net/fix.php?id=46322&r=fixedcvs Fixed in release: http://bugs.php.net/fix.php?id=46322&r=alreadyfixed Need backtrace: http://bugs.php.net/fix.php?id=46322&r=needtrace Need Reproduce Script: http://bugs.php.net/fix.php?id=46322&r=needscript Try newer version: http://bugs.php.net/fix.php?id=46322&r=oldversion Not developer issue: http://bugs.php.net/fix.php?id=46322&r=support Expected behavior: http://bugs.php.net/fix.php?id=46322&r=notwrong Not enough info: http://bugs.php.net/fix.php?id=46322&r=notenoughinfo Submitted twice: http://bugs.php.net/fix.php?id=46322&r=submittedtwice register_globals: http://bugs.php.net/fix.php?id=46322&r=globals PHP 4 support discontinued: http://bugs.php.net/fix.php?id=46322&r=php4 Daylight Savings: http://bugs.php.net/fix.php?id=46322&r=dst IIS Stability: http://bugs.php.net/fix.php?id=46322&r=isapi Install GNU Sed: http://bugs.php.net/fix.php?id=46322&r=gnused Floating point limitations: http://bugs.php.net/fix.php?id=46322&r=float No Zend Extensions: http://bugs.php.net/fix.php?id=46322&r=nozend MySQL Configuration Error: http://bugs.php.net/fix.php?id=46322&r=mysqlcfg