3v4l.org

run code in 300+ PHP versions simultaneously
<?php $jaar = date('Y'); $vakanties = [ 'BeginKerst' => [ 'start' => new DateTime("$jaar-01-01"), 'end' => new DateTime("$jaar-01-05"), ], 'Voorjaar' => [ 'start' => new DateTime("$jaar-02-22"), 'end' => new DateTime("$jaar-03-01"), ], 'Mei' => [ 'start' => new DateTime("$jaar-04-25"), 'end' => new DateTime("$jaar-05-03"), ], 'Zomer' => [ 'start' => new DateTime("$jaar-07-18"), 'end' => new DateTime("$jaar-08-30"), ], 'EindKerst' => [ 'start' => new DateTime("$jaar-12-21"), 'end' => new DateTime("$jaar-12-31"), ], 'Test' => [ 'start' => new DateTime("$jaar-05-20"), 'end' => new DateTime("$jaar-05-25"), ], ]; $now = new DateTime(); foreach ($vakanties as $name => $vakanty) { if ($now >= $vakanty['start'] && $now <= $vakanty['end']) { echo "today is in the middle of a vacation: " . $name; } }
Finding entry points
Branch analysis from position: 0
2 jumps found. (Code = 77) Position 1 = 87, Position 2 = 99
Branch analysis from position: 87
2 jumps found. (Code = 78) Position 1 = 88, Position 2 = 99
Branch analysis from position: 88
2 jumps found. (Code = 46) Position 1 = 92, Position 2 = 95
Branch analysis from position: 92
2 jumps found. (Code = 43) Position 1 = 96, Position 2 = 98
Branch analysis from position: 96
1 jumps found. (Code = 42) Position 1 = 87
Branch analysis from position: 87
Branch analysis from position: 98
Branch analysis from position: 95
Branch analysis from position: 99
1 jumps found. (Code = 62) Position 1 = -2
Branch analysis from position: 99
filename:       /in/qf8vP
function name:  (null)
number of ops:  101
compiled vars:  !0 = $jaar, !1 = $vakanties, !2 = $now, !3 = $vakanty, !4 = $name
line      #* E I O op                           fetch          ext  return  operands
-------------------------------------------------------------------------------------
    2     0  E >   INIT_FCALL                                               'date'
          1        SEND_VAL                                                 'Y'
          2        DO_ICALL                                         $5      
          3        ASSIGN                                                   !0, $5
    5     4        NEW                                              $7      'DateTime'
          5        NOP                                                      
          6        FAST_CONCAT                                      ~8      !0, '-01-01'
          7        SEND_VAL_EX                                              ~8
          8        DO_FCALL                                      0          
          9        INIT_ARRAY                                       ~10     $7, 'start'
    6    10        NEW                                              $11     'DateTime'
         11        NOP                                                      
         12        FAST_CONCAT                                      ~12     !0, '-01-05'
         13        SEND_VAL_EX                                              ~12
         14        DO_FCALL                                      0          
         15        ADD_ARRAY_ELEMENT                                ~10     $11, 'end'
         16        INIT_ARRAY                                       ~14     ~10, 'BeginKerst'
    9    17        NEW                                              $15     'DateTime'
         18        NOP                                                      
         19        FAST_CONCAT                                      ~16     !0, '-02-22'
         20        SEND_VAL_EX                                              ~16
         21        DO_FCALL                                      0          
         22        INIT_ARRAY                                       ~18     $15, 'start'
   10    23        NEW                                              $19     'DateTime'
         24        NOP                                                      
         25        FAST_CONCAT                                      ~20     !0, '-03-01'
         26        SEND_VAL_EX                                              ~20
         27        DO_FCALL                                      0          
         28        ADD_ARRAY_ELEMENT                                ~18     $19, 'end'
         29        ADD_ARRAY_ELEMENT                                ~14     ~18, 'Voorjaar'
   13    30        NEW                                              $22     'DateTime'
         31        NOP                                                      
         32        FAST_CONCAT                                      ~23     !0, '-04-25'
         33        SEND_VAL_EX                                              ~23
         34        DO_FCALL                                      0          
         35        INIT_ARRAY                                       ~25     $22, 'start'
   14    36        NEW                                              $26     'DateTime'
         37        NOP                                                      
         38        FAST_CONCAT                                      ~27     !0, '-05-03'
         39        SEND_VAL_EX                                              ~27
         40        DO_FCALL                                      0          
         41        ADD_ARRAY_ELEMENT                                ~25     $26, 'end'
         42        ADD_ARRAY_ELEMENT                                ~14     ~25, 'Mei'
   17    43        NEW                                              $29     'DateTime'
         44        NOP                                                      
         45        FAST_CONCAT                                      ~30     !0, '-07-18'
         46        SEND_VAL_EX                                              ~30
         47        DO_FCALL                                      0          
         48        INIT_ARRAY                                       ~32     $29, 'start'
   18    49        NEW                                              $33     'DateTime'
         50        NOP                                                      
         51        FAST_CONCAT                                      ~34     !0, '-08-30'
         52        SEND_VAL_EX                                              ~34
         53        DO_FCALL                                      0          
         54        ADD_ARRAY_ELEMENT                                ~32     $33, 'end'
         55        ADD_ARRAY_ELEMENT                                ~14     ~32, 'Zomer'
   21    56        NEW                                              $36     'DateTime'
         57        NOP                                                      
         58        FAST_CONCAT                                      ~37     !0, '-12-21'
         59        SEND_VAL_EX                                              ~37
         60        DO_FCALL                                      0          
         61        INIT_ARRAY                                       ~39     $36, 'start'
   22    62        NEW                                              $40     'DateTime'
         63        NOP                                                      
         64        FAST_CONCAT                                      ~41     !0, '-12-31'
         65        SEND_VAL_EX                                              ~41
         66        DO_FCALL                                      0          
         67        ADD_ARRAY_ELEMENT                                ~39     $40, 'end'
         68        ADD_ARRAY_ELEMENT                                ~14     ~39, 'EindKerst'
   25    69        NEW                                              $43     'DateTime'
         70        NOP                                                      
         71        FAST_CONCAT                                      ~44     !0, '-05-20'
         72        SEND_VAL_EX                                              ~44
         73        DO_FCALL                                      0          
         74        INIT_ARRAY                                       ~46     $43, 'start'
   26    75        NEW                                              $47     'DateTime'
         76        NOP                                                      
         77        FAST_CONCAT                                      ~48     !0, '-05-25'
         78        SEND_VAL_EX                                              ~48
         79        DO_FCALL                                      0          
         80        ADD_ARRAY_ELEMENT                                ~46     $47, 'end'
         81        ADD_ARRAY_ELEMENT                                ~14     ~46, 'Test'
    3    82        ASSIGN                                                   !1, ~14
   30    83        NEW                                              $51     'DateTime'
         84        DO_FCALL                                      0          
         85        ASSIGN                                                   !2, $51
   31    86      > FE_RESET_R                                       $54     !1, ->99
         87    > > FE_FETCH_R                                       ~55     $54, !3, ->99
         88    >   ASSIGN                                                   !4, ~55
   32    89        FETCH_DIM_R                                      ~57     !3, 'start'
         90        IS_SMALLER_OR_EQUAL                              ~58     ~57, !2
         91      > JMPZ_EX                                          ~58     ~58, ->95
         92    >   FETCH_DIM_R                                      ~59     !3, 'end'
         93        IS_SMALLER_OR_EQUAL                              ~60     !2, ~59
         94        BOOL                                             ~58     ~60
         95    > > JMPZ                                                     ~58, ->98
   33    96    >   CONCAT                                           ~61     'today+is+in+the+middle+of+a+vacation%3A+', !4
         97        ECHO                                                     ~61
   31    98    > > JMP                                                      ->87
         99    >   FE_FREE                                                  $54
   35   100      > RETURN                                                   1

Generated using Vulcan Logic Dumper, using php 8.0.0


preferences:
150.06 ms | 952 KiB | 16 Q