3v4l.org

run code in 300+ PHP versions simultaneously
<?php $date = '2015-01-01T00:00:00.000Z'; echo "DateTimeZone will be ignored because date has a timezone 'Z'\n"; $dateTime = new DateTime($date, new DateTimeZone('America/Mexico_City')); echo $dateTime->format('c'). "\n\n"; echo "DateTimeZone will be ignored, date timezone is in UTC anyway!\n"; $dateTime = new DateTime($date, new DateTimeZone('UTC')); echo $dateTime->format('c'). "\n\n"; $date = '2015-01-01T00:00:00.000'; echo "Timezone will be set to the given DateTimeZone America/Mexico_City\n"; $dateTime = new DateTime($date, new DateTimeZone('America/Mexico_City')); echo $dateTime->format('c'). "\n\n"; echo "Timezone will be set to the given DateTimeZone UTC\n"; $dateTime = new DateTime($date, new DateTimeZone('UTC')); echo $dateTime->format('c'). "\n\n"; echo "Timezone will set to the given timezone set in the date string America/Mexico_City\n"; $date = '2015-01-01T00:00:00.000 America/Mexico_City'; $dateTime = new DateTime($date); echo $dateTime->format('c'). "\n\n";
Finding entry points
Branch analysis from position: 0
1 jumps found. (Code = 62) Position 1 = -2
filename:       /in/ktb3U
function name:  (null)
number of ops:  70
compiled vars:  !0 = $date, !1 = $dateTime
line      #* E I O op                           fetch          ext  return  operands
-------------------------------------------------------------------------------------
    2     0  E >   ASSIGN                                                   !0, '2015-01-01T00%3A00%3A00.000Z'
    4     1        ECHO                                                     'DateTimeZone+will+be+ignored+because+date+has+a+timezone+%27Z%27%0A'
    5     2        NEW                                              $3      'DateTime'
          3        SEND_VAR_EX                                              !0
          4        NEW                                              $4      'DateTimeZone'
          5        SEND_VAL_EX                                              'America%2FMexico_City'
          6        DO_FCALL                                      0          
          7        SEND_VAR_NO_REF_EX                                       $4
          8        DO_FCALL                                      0          
          9        ASSIGN                                                   !1, $3
    6    10        INIT_METHOD_CALL                                         !1, 'format'
         11        SEND_VAL_EX                                              'c'
         12        DO_FCALL                                      0  $8      
         13        CONCAT                                           ~9      $8, '%0A%0A'
         14        ECHO                                                     ~9
    8    15        ECHO                                                     'DateTimeZone+will+be+ignored%2C+date+timezone+is+in+UTC+anyway%21%0A'
    9    16        NEW                                              $10     'DateTime'
         17        SEND_VAR_EX                                              !0
         18        NEW                                              $11     'DateTimeZone'
         19        SEND_VAL_EX                                              'UTC'
         20        DO_FCALL                                      0          
         21        SEND_VAR_NO_REF_EX                                       $11
         22        DO_FCALL                                      0          
         23        ASSIGN                                                   !1, $10
   10    24        INIT_METHOD_CALL                                         !1, 'format'
         25        SEND_VAL_EX                                              'c'
         26        DO_FCALL                                      0  $15     
         27        CONCAT                                           ~16     $15, '%0A%0A'
         28        ECHO                                                     ~16
   12    29        ASSIGN                                                   !0, '2015-01-01T00%3A00%3A00.000'
   14    30        ECHO                                                     'Timezone+will+be+set+to+the+given+DateTimeZone+America%2FMexico_City%0A'
   15    31        NEW                                              $18     'DateTime'
         32        SEND_VAR_EX                                              !0
         33        NEW                                              $19     'DateTimeZone'
         34        SEND_VAL_EX                                              'America%2FMexico_City'
         35        DO_FCALL                                      0          
         36        SEND_VAR_NO_REF_EX                                       $19
         37        DO_FCALL                                      0          
         38        ASSIGN                                                   !1, $18
   16    39        INIT_METHOD_CALL                                         !1, 'format'
         40        SEND_VAL_EX                                              'c'
         41        DO_FCALL                                      0  $23     
         42        CONCAT                                           ~24     $23, '%0A%0A'
         43        ECHO                                                     ~24
   18    44        ECHO                                                     'Timezone+will+be+set+to+the+given+DateTimeZone+UTC%0A'
   19    45        NEW                                              $25     'DateTime'
         46        SEND_VAR_EX                                              !0
         47        NEW                                              $26     'DateTimeZone'
         48        SEND_VAL_EX                                              'UTC'
         49        DO_FCALL                                      0          
         50        SEND_VAR_NO_REF_EX                                       $26
         51        DO_FCALL                                      0          
         52        ASSIGN                                                   !1, $25
   20    53        INIT_METHOD_CALL                                         !1, 'format'
         54        SEND_VAL_EX                                              'c'
         55        DO_FCALL                                      0  $30     
         56        CONCAT                                           ~31     $30, '%0A%0A'
         57        ECHO                                                     ~31
   22    58        ECHO                                                     'Timezone+will+set+to+the+given+timezone+set+in+the+date+string+America%2FMexico_City%0A'
   23    59        ASSIGN                                                   !0, '2015-01-01T00%3A00%3A00.000+America%2FMexico_City'
   24    60        NEW                                              $33     'DateTime'
         61        SEND_VAR_EX                                              !0
         62        DO_FCALL                                      0          
         63        ASSIGN                                                   !1, $33
   25    64        INIT_METHOD_CALL                                         !1, 'format'
         65        SEND_VAL_EX                                              'c'
         66        DO_FCALL                                      0  $36     
         67        CONCAT                                           ~37     $36, '%0A%0A'
         68        ECHO                                                     ~37
         69      > RETURN                                                   1

Generated using Vulcan Logic Dumper, using php 8.0.0


preferences:
148 ms | 1399 KiB | 13 Q