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/att9E
function name:  (null)
number of ops:  64
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
   13    41        FETCH_OBJ_R                                      ~32     !5, 'start'
         42        INIT_METHOD_CALL                                         ~32, 'format'
         43        SEND_VAL_EX                                              'c'
         44        DO_FCALL                                      0  $33     
         45        ECHO                                                     $33
   14    46        ECHO                                                     '%0A'
   15    47        INIT_METHOD_CALL                                         !7, 'format'
         48        SEND_VAL_EX                                              'c'
         49        DO_FCALL                                      0  $34     
         50        ECHO                                                     $34
   16    51        ECHO                                                     '%0A'
   17    52        ECHO                                                     '%0A'
   18    53        FETCH_OBJ_R                                      ~35     !5, 'end'
         54        INIT_METHOD_CALL                                         ~35, 'format'
         55        SEND_VAL_EX                                              'c'
         56        DO_FCALL                                      0  $36     
         57        ECHO                                                     $36
   19    58        ECHO                                                     '%0A'
   20    59        INIT_METHOD_CALL                                         !8, 'format'
         60        SEND_VAL_EX                                              'c'
         61        DO_FCALL                                      0  $37     
         62        ECHO                                                     $37
         63      > RETURN                                                   1

Generated using Vulcan Logic Dumper, using php 8.0.0


preferences:
159.63 ms | 1400 KiB | 21 Q