Bug #68669 [NEW]: DateTime::createFromFormat() does not allow NULL $timezone

From: Date: Sun, 28 Dec 2014 22:31:39 +0000
Subject: Bug #68669 [NEW]: DateTime::createFromFormat() does not allow NULL $timezone
Groups: php.bugs 
Request: Send a blank email to php-bugs+get-189269@lists.php.net to get a copy of this message
From: ocramius at gmail dot com Operating system: PHP version: 5.6.4 Package: Date/time related Bug Type: Bug Bug description:DateTime::createFromFormat() does not allow NULL $timezone Description: ------------ `DateTime::createFromFormat($format, $time, DateTimeZone $timezone = null) has a default value for its third parameter $timezone`, but it doesn't accept null as a value. Running the following script will raise a warning: DateTime::createFromFormat('Y/m/d', '2015/1/1', null); // Warning: DateTime::createFromFormat() expects parameter 3 to be DateTimeZone, null given While the documentation states that the default timezone is going to be used when no parameter is given, also the case where a null $timezone is given should be handled correctly. This would align the API to the language semantics about default values. Test script: --------------- <?php var_dump(get_class(DateTime::createFromFormat('Y/m/d', '2015/1/1', null))); Expected result: ---------------- string(8) "DateTime" Actual result: -------------- Warning: DateTime::createFromFormat() expects parameter 3 to be DateTimeZone, null given in %a on line 3 Warning: get_class() expects parameter 1 to be object, boolean given in %a on line 3 bool(false) -- Edit bug report at https://bugs.php.net/bug.php?id=68669&edit=1 -- Try a snapshot (PHP 5.4): https://bugs.php.net/fix.php?id=68669&r=trysnapshot54 Try a snapshot (PHP 5.5): https://bugs.php.net/fix.php?id=68669&r=trysnapshot55 Try a snapshot (trunk): https://bugs.php.net/fix.php?id=68669&r=trysnapshottrunk Fixed in SVN: https://bugs.php.net/fix.php?id=68669&r=fixed Fixed in release: https://bugs.php.net/fix.php?id=68669&r=alreadyfixed Need backtrace: https://bugs.php.net/fix.php?id=68669&r=needtrace Need Reproduce Script: https://bugs.php.net/fix.php?id=68669&r=needscript Try newer version: https://bugs.php.net/fix.php?id=68669&r=oldversion Not developer issue: https://bugs.php.net/fix.php?id=68669&r=support Expected behavior: https://bugs.php.net/fix.php?id=68669&r=notwrong Not enough info: https://bugs.php.net/fix.php?id=68669&r=notenoughinfo Submitted twice: https://bugs.php.net/fix.php?id=68669&r=submittedtwice register_globals: https://bugs.php.net/fix.php?id=68669&r=globals PHP 4 support discontinued: https://bugs.php.net/fix.php?id=68669&r=php4 Daylight Savings: https://bugs.php.net/fix.php?id=68669&r=dst IIS Stability: https://bugs.php.net/fix.php?id=68669&r=isapi Install GNU Sed: https://bugs.php.net/fix.php?id=68669&r=gnused Floating point limitations: https://bugs.php.net/fix.php?id=68669&r=float No Zend Extensions: https://bugs.php.net/fix.php?id=68669&r=nozend MySQL Configuration Error: https://bugs.php.net/fix.php?id=68669&r=mysqlcfg

« previous php.bugs (#189269) next »