Edit report at https://bugs.php.net/bug.php?id=65787&edit=1

 ID:                 65787
 Updated by:         requi...@php.net
 Reported by:        vascowhite at gmail dot com
 Summary:            DateTime::__construct() accepts all single letters
                     except 'j' as valid timezone
-Status:             Open
+Status:             Duplicate
 Type:               Bug
 Package:            Date/time related
 Operating System:   All?
 PHP Version:        5.5.4
 Block user comment: N
 Private report:     N

 New Comment:

Single letters except "j" correspond to a military timezone.
http://en.wikipedia.org/wiki/List_of_military_time_zones

(I've marked the other report as a doc bug accordingly.)


Previous Comments:
------------------------------------------------------------------------
[2013-09-29 15:56:59] vascowhite at gmail dot com

I just found that this is a duplicate of bug #65747

------------------------------------------------------------------------
[2013-09-29 15:13:43] vascowhite at gmail dot com

Description:
------------
If just a single letter is passed to the constructor of \DateTime it is 
accepted 
as a valid timezone string. Except, for some strange reason, the letter 'j'.

Test script:
---------------
$date = new \DateTime('a');
var_dump($date);

Expected result:
----------------
I expect an exception to be raised with the message:-

Fatal error: Uncaught exception 'Exception' with message 
'DateTime::__construct(): 
Failed to parse time string (a) at position 0 (a): The timezone could not be 
found 
in the database' 

Actual result:
--------------
Except for when the letter 'j' is passed a DateTime object is created. For 
example 
the following code:-

$date = new \DateTime('a');
var_dump($date);

Will give the following output:-

object(DateTime)[1]
  public 'date' => string '2013-09-29 15:17:19' (length=19)
  public 'timezone_type' => int 2
  public 'timezone' => string 'A' (length=1)


Where it should raise an exception.


------------------------------------------------------------------------



-- 
Edit this bug report at https://bugs.php.net/bug.php?id=65787&edit=1

Reply via email to