3v4l.org

run code in 300+ 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.0.0


preferences:
147.2 ms | 1404 KiB | 15 Q