3v4l.org

run code in 300+ PHP versions simultaneously
<?php $default = "2001-01-01 12:34:56"; $date='2018-06-29 00:00:00'; $startDate=(new DateTime($default))->setISODate(date('Y',strtotime($date)),date('W',strtotime($date)))->format('Y-m-d H:i:s'); $endDate=(new DateTime($default))->setISODate(date('Y',strtotime($date)), date('W',strtotime($date)), 7)->format('Y-m-d H:i:s'); $startTimestamp = (new DateTime($default))->setISODate(date('Y',strtotime($date)),date('W',strtotime($date)))->getTimestamp(); echo 'input = '.$date; echo "\nstrtotime = ".strtotime($date); echo "\nsetISODate->getTimestamp = "; echo $startTimestamp; echo "\nstartDate = ".$startDate."\nendDate = ".$endDate;
Finding entry points
Branch analysis from position: 0
1 jumps found. (Code = 62) Position 1 = -2
filename:       /in/6hbDZ
function name:  (null)
number of ops:  91
compiled vars:  !0 = $default, !1 = $date, !2 = $startDate, !3 = $endDate, !4 = $startTimestamp
line      #* E I O op                           fetch          ext  return  operands
-------------------------------------------------------------------------------------
    3     0  E >   ASSIGN                                                   !0, '2001-01-01+12%3A34%3A56'
    5     1        ASSIGN                                                   !1, '2018-06-29+00%3A00%3A00'
    6     2        NEW                                              $7      'DateTime'
          3        SEND_VAR_EX                                              !0
          4        DO_FCALL                                      0          
          5        INIT_METHOD_CALL                                         $7, 'setISODate'
          6        INIT_FCALL                                               'date'
          7        SEND_VAL                                                 'Y'
          8        INIT_FCALL                                               'strtotime'
          9        SEND_VAR                                                 !1
         10        DO_ICALL                                         $9      
         11        SEND_VAR                                                 $9
         12        DO_ICALL                                         $10     
         13        SEND_VAR_NO_REF_EX                                       $10
         14        INIT_FCALL                                               'date'
         15        SEND_VAL                                                 'W'
         16        INIT_FCALL                                               'strtotime'
         17        SEND_VAR                                                 !1
         18        DO_ICALL                                         $11     
         19        SEND_VAR                                                 $11
         20        DO_ICALL                                         $12     
         21        SEND_VAR_NO_REF_EX                                       $12
         22        DO_FCALL                                      0  $13     
         23        INIT_METHOD_CALL                                         $13, 'format'
         24        SEND_VAL_EX                                              'Y-m-d+H%3Ai%3As'
         25        DO_FCALL                                      0  $14     
         26        ASSIGN                                                   !2, $14
    7    27        NEW                                              $16     'DateTime'
         28        SEND_VAR_EX                                              !0
         29        DO_FCALL                                      0          
         30        INIT_METHOD_CALL                                         $16, 'setISODate'
         31        INIT_FCALL                                               'date'
         32        SEND_VAL                                                 'Y'
         33        INIT_FCALL                                               'strtotime'
         34        SEND_VAR                                                 !1
         35        DO_ICALL                                         $18     
         36        SEND_VAR                                                 $18
         37        DO_ICALL                                         $19     
         38        SEND_VAR_NO_REF_EX                                       $19
         39        INIT_FCALL                                               'date'
         40        SEND_VAL                                                 'W'
         41        INIT_FCALL                                               'strtotime'
         42        SEND_VAR                                                 !1
         43        DO_ICALL                                         $20     
         44        SEND_VAR                                                 $20
         45        DO_ICALL                                         $21     
         46        SEND_VAR_NO_REF_EX                                       $21
         47        SEND_VAL_EX                                              7
         48        DO_FCALL                                      0  $22     
         49        INIT_METHOD_CALL                                         $22, 'format'
         50        SEND_VAL_EX                                              'Y-m-d+H%3Ai%3As'
         51        DO_FCALL                                      0  $23     
         52        ASSIGN                                                   !3, $23
    8    53        NEW                                              $25     'DateTime'
         54        SEND_VAR_EX                                              !0
         55        DO_FCALL                                      0          
         56        INIT_METHOD_CALL                                         $25, 'setISODate'
         57        INIT_FCALL                                               'date'
         58        SEND_VAL                                                 'Y'
         59        INIT_FCALL                                               'strtotime'
         60        SEND_VAR                                                 !1
         61        DO_ICALL                                         $27     
         62        SEND_VAR                                                 $27
         63        DO_ICALL                                         $28     
         64        SEND_VAR_NO_REF_EX                                       $28
         65        INIT_FCALL                                               'date'
         66        SEND_VAL                                                 'W'
         67        INIT_FCALL                                               'strtotime'
         68        SEND_VAR                                                 !1
         69        DO_ICALL                                         $29     
         70        SEND_VAR                                                 $29
         71        DO_ICALL                                         $30     
         72        SEND_VAR_NO_REF_EX                                       $30
         73        DO_FCALL                                      0  $31     
         74        INIT_METHOD_CALL                                         $31, 'getTimestamp'
         75        DO_FCALL                                      0  $32     
         76        ASSIGN                                                   !4, $32
    9    77        CONCAT                                           ~34     'input+%3D+', !1
         78        ECHO                                                     ~34
   10    79        INIT_FCALL                                               'strtotime'
         80        SEND_VAR                                                 !1
         81        DO_ICALL                                         $35     
         82        CONCAT                                           ~36     '%0Astrtotime+%3D+', $35
         83        ECHO                                                     ~36
   11    84        ECHO                                                     '%0AsetISODate-%3EgetTimestamp+%3D+'
   12    85        ECHO                                                     !4
   13    86        CONCAT                                           ~37     '%0AstartDate+%3D+', !2
         87        CONCAT                                           ~38     ~37, '%0AendDate+%3D+'
         88        CONCAT                                           ~39     ~38, !3
         89        ECHO                                                     ~39
   14    90      > RETURN                                                   1

Generated using Vulcan Logic Dumper, using php 8.0.0


preferences:
297.22 ms | 1405 KiB | 18 Q