3v4l.org

run code in 300+ PHP versions simultaneously
<?php $dateRange = '2012-10-01 - 2014-01-20'; $parts = explode(' - ', $dateRange); $begin = new \DateTime($parts[0]); $end = new \DateTime($parts[1]); $interval = new \DateInterval('P1D'); $datePeriod = new \DatePeriod($begin, $interval, $end, DatePeriod::EXCLUDE_START_DATE); $periodArray = iterator_to_array($datePeriod); $startDate = reset($periodArray); $endDate = end($periodArray); #echo $datePeriod->start->format('c'); #echo "\n"; echo $startDate->format('c'); echo "\n"; #echo "\n"; #echo $datePeriod->end->format('c'); #echo "\n"; echo $endDate->format('c');
Finding entry points
Branch analysis from position: 0
1 jumps found. (Code = 62) Position 1 = -2
filename:       /in/FrbMH
function name:  (null)
number of ops:  51
compiled vars:  !0 = $dateRange, !1 = $parts, !2 = $begin, !3 = $end, !4 = $interval, !5 = $datePeriod, !6 = $periodArray, !7 = $startDate, !8 = $endDate
line      #* E I O op                           fetch          ext  return  operands
-------------------------------------------------------------------------------------
    2     0  E >   ASSIGN                                                   !0, '2012-10-01+-+2014-01-20'
    3     1        INIT_FCALL                                               'explode'
          2        SEND_VAL                                                 '+-+'
          3        SEND_VAR                                                 !0
          4        DO_ICALL                                         $10     
          5        ASSIGN                                                   !1, $10
    4     6        NEW                                              $12     'DateTime'
          7        CHECK_FUNC_ARG                                           
          8        FETCH_DIM_FUNC_ARG                               $13     !1, 0
          9        SEND_FUNC_ARG                                            $13
         10        DO_FCALL                                      0          
         11        ASSIGN                                                   !2, $12
    5    12        NEW                                              $16     'DateTime'
         13        CHECK_FUNC_ARG                                           
         14        FETCH_DIM_FUNC_ARG                               $17     !1, 1
         15        SEND_FUNC_ARG                                            $17
         16        DO_FCALL                                      0          
         17        ASSIGN                                                   !3, $16
    6    18        NEW                                              $20     'DateInterval'
         19        SEND_VAL_EX                                              'P1D'
         20        DO_FCALL                                      0          
         21        ASSIGN                                                   !4, $20
    7    22        NEW                                              $23     'DatePeriod'
         23        SEND_VAR_EX                                              !2
         24        SEND_VAR_EX                                              !4
         25        SEND_VAR_EX                                              !3
         26        SEND_VAL_EX                                              1
         27        DO_FCALL                                      0          
         28        ASSIGN                                                   !5, $23
    9    29        INIT_FCALL                                               'iterator_to_array'
         30        SEND_VAR                                                 !5
         31        DO_ICALL                                         $26     
         32        ASSIGN                                                   !6, $26
   10    33        INIT_FCALL                                               'reset'
         34        SEND_REF                                                 !6
         35        DO_ICALL                                         $28     
         36        ASSIGN                                                   !7, $28
   11    37        INIT_FCALL                                               'end'
         38        SEND_REF                                                 !6
         39        DO_ICALL                                         $30     
         40        ASSIGN                                                   !8, $30
   15    41        INIT_METHOD_CALL                                         !7, 'format'
         42        SEND_VAL_EX                                              'c'
         43        DO_FCALL                                      0  $32     
         44        ECHO                                                     $32
   16    45        ECHO                                                     '%0A'
   20    46        INIT_METHOD_CALL                                         !8, 'format'
         47        SEND_VAL_EX                                              'c'
         48        DO_FCALL                                      0  $33     
         49        ECHO                                                     $33
         50      > RETURN                                                   1

Generated using Vulcan Logic Dumper, using php 8.0.0


preferences:
155.85 ms | 1400 KiB | 21 Q