#41305 [NEW]: BOOLEAN acts strange

From: Date: Sun, 06 May 2007 18:13:56 +0000
Subject: #41305 [NEW]: BOOLEAN acts strange
Groups: php.bugs 
Request: Send a blank email to php-bugs+get-112322@lists.php.net to get a copy of this message
From: Se dot Krebs at web dot de Operating system: Win32 PHP version: 5.2.2 PHP Bug Type: Filter related Bug description: BOOLEAN acts strange Description: ------------ FILTER_VALIDATE_BOOLEAN never returns null like its mentioned in the Manual ("otherwise null") without the FILTER_NULL_ON_FAILURE-Option. Even in the Manual is mentioned, that only String-"Booleans" will filterd, but true also returns true. Maybe without the Option the Manual is a kind of out-of-date, but the fact, that "false" is a Failure, but "true" isnt, seems strange to me. Reproduce code: --------------- var_dump( filter_var('false', FILTER_VALIDATE_BOOLEAN)); var_dump( filter_var(false, FILTER_VALIDATE_BOOLEAN)); var_dump( filter_var('true', FILTER_VALIDATE_BOOLEAN)); var_dump( filter_var(true, FILTER_VALIDATE_BOOLEAN)); var_dump( filter_var('false', FILTER_VALIDATE_BOOLEAN, FILTER_NULL_ON_FAILURE)); // bool(false) var_dump( filter_var(false, FILTER_VALIDATE_BOOLEAN, FILTER_NULL_ON_FAILURE)); // NULL var_dump( filter_var('true', FILTER_VALIDATE_BOOLEAN, FILTER_NULL_ON_FAILURE)); // bool(false) var_dump( filter_var(true, FILTER_VALIDATE_BOOLEAN, FILTER_NULL_ON_FAILURE)); // bool(false) Expected result: ---------------- // first 4 lines: bool (false) NULL bool (true) NULL // last 4 lines the same Actual result: -------------- bool (false) bool (false) bool (true) bool (true) bool (false) NULL bool (true) bool (true) -- Edit bug report at http://bugs.php.net/?id=41305&edit=1 -- Try a CVS snapshot (PHP 4.4): http://bugs.php.net/fix.php?id=41305&r=trysnapshot44 Try a CVS snapshot (PHP 5.2): http://bugs.php.net/fix.php?id=41305&r=trysnapshot52 Try a CVS snapshot (PHP 6.0): http://bugs.php.net/fix.php?id=41305&r=trysnapshot60 Fixed in CVS: http://bugs.php.net/fix.php?id=41305&r=fixedcvs Fixed in release: http://bugs.php.net/fix.php?id=41305&r=alreadyfixed Need backtrace: http://bugs.php.net/fix.php?id=41305&r=needtrace Need Reproduce Script: http://bugs.php.net/fix.php?id=41305&r=needscript Try newer version: http://bugs.php.net/fix.php?id=41305&r=oldversion Not developer issue: http://bugs.php.net/fix.php?id=41305&r=support Expected behavior: http://bugs.php.net/fix.php?id=41305&r=notwrong Not enough info: http://bugs.php.net/fix.php?id=41305&r=notenoughinfo Submitted twice: http://bugs.php.net/fix.php?id=41305&r=submittedtwice register_globals: http://bugs.php.net/fix.php?id=41305&r=globals PHP 3 support discontinued: http://bugs.php.net/fix.php?id=41305&r=php3 Daylight Savings: http://bugs.php.net/fix.php?id=41305&r=dst IIS Stability: http://bugs.php.net/fix.php?id=41305&r=isapi Install GNU Sed: http://bugs.php.net/fix.php?id=41305&r=gnused Floating point limitations: http://bugs.php.net/fix.php?id=41305&r=float No Zend Extensions: http://bugs.php.net/fix.php?id=41305&r=nozend MySQL Configuration Error: http://bugs.php.net/fix.php?id=41305&r=mysqlcfg

« previous php.bugs (#112322) next »