ID: 31399 User updated by: sveta at microbecal dot com Reported By: sveta at microbecal dot com Status: Bogus Bug Type: Documentation problem PHP Version: 5CVS-2005-01-04 (dev) New Comment:
OK Lets correct "patch" to: --- count.xml 2004-11-03 10:30:02.000000000 +0300 +++ count_new.xml 2005-01-01 19:45:24.000000000 +0300 @@ -53,6 +53,8 @@ isn't set, but it may also return 0 for a variable that has been initialized with an empty array. Use <function>isset</function> to test if a variable is set. + <function>count</function> generates warning of level + <link linkend="errorfunc.constants">E_NOTICE</link> in case of taking non-initialized variable as parameter. </para> </caution> <para> or to something with similar sence, but better style English Previous Comments: ------------------------------------------------------------------------ [2005-01-04 17:00:06] [EMAIL PROTECTED] PHP 4 also gives a warning: C:\php4>php-cli -r "error_reporting(E_ALL); echo count($a);" Notice: Undefined variable: a in Command line code on line 1 0 ------------------------------------------------------------------------ [2005-01-04 12:46:58] [EMAIL PROTECTED] That was not the point Nuno, thebehavior changed regarding non-initialized values..that can be documented just fine. ------------------------------------------------------------------------ [2005-01-04 12:15:09] [EMAIL PROTECTED] It stills return 0. Try echoing its value with: '<? echo count($a); ?>' ------------------------------------------------------------------------ [2005-01-04 00:27:25] sveta at microbecal dot com Description: ------------ In function.count I see: "count() may return 0 for a variable that isn't set", but is not true with PHP5 with E_NOTICE turned on I have tried to patch it: --- count.xml 2004-11-03 10:30:02.000000000 +0300 +++ count_new.xml 2005-01-01 19:45:24.000000000 +0300 @@ -53,6 +53,8 @@ isn't set, but it may also return 0 for a variable that has been initialized with an empty array. Use <function>isset</function> to test if a variable is set. + Since PHP 5.0.0, <function>count</function> generates warning of level + <link linkend="errorfunc.constants">E_NOTICE</link> in case of taking non-initialized variable as parameter. </para> </caution> <para> Reproduce code: --------------- count($x); Expected result: ---------------- 0 Actual result: -------------- Notice: Undefined variable: x in D:\My Documents\web_project\PHP.lessons\www\reflection.php on line 3 ------------------------------------------------------------------------ -- Edit this bug report at http://bugs.php.net/?id=31399&edit=1