3v4l.org

run code in 500+ PHP versions simultaneously
<?php $dt = new DateTime('2018-10-28 02:00:00', new DateTimeZone('Europe/Prague')); //Transition local time 3:00 to 2:00 $d = $dt->format('Y-m-d H:i:s P T'); $time = $dt->format('U'); $dt2 = new DateTime('@'.$time); $d2 = $dt2->format('Y-m-d H:i:s P T'); $tz = $dt->getTimezone(); $e = $tz->getTransitions($time, $time); $dt3 = clone $dt; $date1 = $dt3->setTimestamp($time - 1); $dt3 = clone $dt; $date2 = $dt3->setTimestamp($time); $dt3 = clone $dt; $date3 = $dt3->setTimestamp($time + 3600 - 1); $dt3 = clone $dt; $date4 = $dt3->setTimestamp($time + 3600); $dt3 = clone $dt; $date5 = $dt3->setTimestamp($time + 3600*2 - 1); $dt3 = clone $dt; var_dump($date1->format(DateTime::ATOM)); var_dump($date2->format(DateTime::ATOM)); var_dump($date3->format(DateTime::ATOM)); var_dump($date4->format(DateTime::ATOM)); var_dump($date5->format(DateTime::ATOM)); var_dump('Europe/Prague '.$d, 'UTC '.$d2, $e);
Finding entry points
Branch analysis from position: 0
1 jumps found. (Code = 62) Position 1 = -2
filename:       /in/CNGnE
function name:  (null)
number of ops:  109
compiled vars:  !0 = $dt, !1 = $d, !2 = $time, !3 = $dt2, !4 = $d2, !5 = $tz, !6 = $e, !7 = $dt3, !8 = $date1, !9 = $date2, !10 = $date3, !11 = $date4, !12 = $date5
line      #* E I O op                               fetch          ext  return  operands
-----------------------------------------------------------------------------------------
    3     0  E >   NEW                                                  $13     'DateTime'
          1        SEND_VAL_EX                                                  '2018-10-28+02%3A00%3A00'
          2        NEW                                                  $14     'DateTimeZone'
          3        SEND_VAL_EX                                                  'Europe%2FPrague'
          4        DO_FCALL                                          0          
          5        SEND_VAR_NO_REF_EX                                           $14
          6        DO_FCALL                                          0          
          7        ASSIGN                                                       !0, $13
    4     8        INIT_METHOD_CALL                                             !0, 'format'
          9        SEND_VAL_EX                                                  'Y-m-d+H%3Ai%3As+P+T'
         10        DO_FCALL                                          0  $18     
         11        ASSIGN                                                       !1, $18
    5    12        INIT_METHOD_CALL                                             !0, 'format'
         13        SEND_VAL_EX                                                  'U'
         14        DO_FCALL                                          0  $20     
         15        ASSIGN                                                       !2, $20
    6    16        NEW                                                  $22     'DateTime'
         17        CONCAT                                               ~23     '%40', !2
         18        SEND_VAL_EX                                                  ~23
         19        DO_FCALL                                          0          
         20        ASSIGN                                                       !3, $22
    7    21        INIT_METHOD_CALL                                             !3, 'format'
         22        SEND_VAL_EX                                                  'Y-m-d+H%3Ai%3As+P+T'
         23        DO_FCALL                                          0  $26     
         24        ASSIGN                                                       !4, $26
    8    25        INIT_METHOD_CALL                                             !0, 'getTimezone'
         26        DO_FCALL                                          0  $28     
         27        ASSIGN                                                       !5, $28
    9    28        INIT_METHOD_CALL                                             !5, 'getTransitions'
         29        SEND_VAR_EX                                                  !2
         30        SEND_VAR_EX                                                  !2
         31        DO_FCALL                                          0  $30     
         32        ASSIGN                                                       !6, $30
   10    33        CLONE                                                ~32     !0
         34        ASSIGN                                                       !7, ~32
   11    35        INIT_METHOD_CALL                                             !7, 'setTimestamp'
         36        SUB                                                  ~34     !2, 1
         37        SEND_VAL_EX                                                  ~34
         38        DO_FCALL                                          0  $35     
         39        ASSIGN                                                       !8, $35
   12    40        CLONE                                                ~37     !0
         41        ASSIGN                                                       !7, ~37
   13    42        INIT_METHOD_CALL                                             !7, 'setTimestamp'
         43        SEND_VAR_EX                                                  !2
         44        DO_FCALL                                          0  $39     
         45        ASSIGN                                                       !9, $39
   14    46        CLONE                                                ~41     !0
         47        ASSIGN                                                       !7, ~41
   15    48        INIT_METHOD_CALL                                             !7, 'setTimestamp'
         49        ADD                                                  ~43     !2, 3600
         50        SUB                                                  ~44     ~43, 1
         51        SEND_VAL_EX                                                  ~44
         52        DO_FCALL                                          0  $45     
         53        ASSIGN                                                       !10, $45
   16    54        CLONE                                                ~47     !0
         55        ASSIGN                                                       !7, ~47
   17    56        INIT_METHOD_CALL                                             !7, 'setTimestamp'
         57        ADD                                                  ~49     !2, 3600
         58        SEND_VAL_EX                                                  ~49
         59        DO_FCALL                                          0  $50     
         60        ASSIGN                                                       !11, $50
   18    61        CLONE                                                ~52     !0
         62        ASSIGN                                                       !7, ~52
   19    63        INIT_METHOD_CALL                                             !7, 'setTimestamp'
         64        ADD                                                  ~54     !2, 7200
         65        SUB                                                  ~55     ~54, 1
         66        SEND_VAL_EX                                                  ~55
         67        DO_FCALL                                          0  $56     
         68        ASSIGN                                                       !12, $56
   20    69        CLONE                                                ~58     !0
         70        ASSIGN                                                       !7, ~58
   22    71        INIT_FCALL                                                   'var_dump'
         72        INIT_METHOD_CALL                                             !8, 'format'
         73        SEND_VAL_EX                                                  'Y-m-d%5CTH%3Ai%3AsP'
         74        DO_FCALL                                          0  $60     
         75        SEND_VAR                                                     $60
         76        DO_ICALL                                                     
   23    77        INIT_FCALL                                                   'var_dump'
         78        INIT_METHOD_CALL                                             !9, 'format'
         79        SEND_VAL_EX                                                  'Y-m-d%5CTH%3Ai%3AsP'
         80        DO_FCALL                                          0  $62     
         81        SEND_VAR                                                     $62
         82        DO_ICALL                                                     
   24    83        INIT_FCALL                                                   'var_dump'
         84        INIT_METHOD_CALL                                             !10, 'format'
         85        SEND_VAL_EX                                                  'Y-m-d%5CTH%3Ai%3AsP'
         86        DO_FCALL                                          0  $64     
         87        SEND_VAR                                                     $64
         88        DO_ICALL                                                     
   25    89        INIT_FCALL                                                   'var_dump'
         90        INIT_METHOD_CALL                                             !11, 'format'
         91        SEND_VAL_EX                                                  'Y-m-d%5CTH%3Ai%3AsP'
         92        DO_FCALL                                          0  $66     
         93        SEND_VAR                                                     $66
         94        DO_ICALL                                                     
   26    95        INIT_FCALL                                                   'var_dump'
         96        INIT_METHOD_CALL                                             !12, 'format'
         97        SEND_VAL_EX                                                  'Y-m-d%5CTH%3Ai%3AsP'
         98        DO_FCALL                                          0  $68     
         99        SEND_VAR                                                     $68
        100        DO_ICALL                                                     
   27   101        INIT_FCALL                                                   'var_dump'
        102        CONCAT                                               ~70     'Europe%2FPrague+', !1
        103        SEND_VAL                                                     ~70
        104        CONCAT                                               ~71     'UTC+', !4
        105        SEND_VAL                                                     ~71
        106        SEND_VAR                                                     !6
        107        DO_ICALL                                                     
        108      > RETURN                                                       1

Generated using Vulcan Logic Dumper, using php 8.5.0


preferences:
241.38 ms | 3049 KiB | 9 Q