3v4l.org

run code in 300+ PHP versions simultaneously
<?php $_rows = array(); $_sub_categories = array(); for($i = 1; $i <= 28; $i++) { if(in_array($i, array(1,2))) { $_rows['row1'][] = 'Category '.$i; } if(in_array($i, array(3,4,5))) { $_rows['row2'][] = 'Category '.$i; } if(in_array($i, array(6,7,8))) { $_rows['row3'][] = 'Category '.$i; } if(in_array($i, array(9,10,11))) { $_rows['row4'][] = 'Category '.$i; } if(in_array($i, array(12,13))) { $_rows['row5'][] = 'Category '.$i; } if(in_array($i, array(14,15,16))) { $_rows['row6'][] = 'Category '.$i; } if(in_array($i, array(17,18,19))) { $_rows['row7'][] = 'Category '.$i; } if(in_array($i, array(20,21,22))) { $_rows['row8'][] = 'Category '.$i; } if(in_array($i, array(23,24,25))) { $_rows['row9'][] = 'Category '.$i; } if(in_array($i, array(26,27,28))) { $_rows['row10'][] = 'Category '.$i; } } foreach($_rows as $key => $val) { if(in_array($key, array('row1'))) { $_sub_categories[1] = $val; } if(in_array($key, array('row2','row3','row4'))) { $_sub_categories[2] = $val; } if(in_array($key, array('row5'))) { $_sub_categories[3] = $val; } if(in_array($key, array('row6','row7','row8','row9','row10'))) { $_sub_categories[4] = $val; } } print_r($_sub_categories); foreach($_sub_categories as $_subcat):?> <ul> <?php $j = 0; ?> <?php foreach($_subcat as $_sub_category): $j++; ?> <li <?php if($j==1) { echo 'class="first"'; } ?>><?php echo $_sub_category; ?></li> <?php endforeach; ?> </ul> <?php endforeach; ?>
Finding entry points
Branch analysis from position: 0
1 jumps found. (Code = 42) Position 1 = 95
Branch analysis from position: 95
2 jumps found. (Code = 44) Position 1 = 97, Position 2 = 4
Branch analysis from position: 97
2 jumps found. (Code = 77) Position 1 = 98, Position 2 = 117
Branch analysis from position: 98
2 jumps found. (Code = 78) Position 1 = 99, Position 2 = 117
Branch analysis from position: 99
2 jumps found. (Code = 43) Position 1 = 102, Position 2 = 104
Branch analysis from position: 102
2 jumps found. (Code = 43) Position 1 = 106, Position 2 = 108
Branch analysis from position: 106
2 jumps found. (Code = 43) Position 1 = 110, Position 2 = 112
Branch analysis from position: 110
2 jumps found. (Code = 43) Position 1 = 114, Position 2 = 116
Branch analysis from position: 114
1 jumps found. (Code = 42) Position 1 = 98
Branch analysis from position: 98
Branch analysis from position: 116
Branch analysis from position: 112
Branch analysis from position: 108
Branch analysis from position: 104
Branch analysis from position: 117
2 jumps found. (Code = 77) Position 1 = 122, Position 2 = 140
Branch analysis from position: 122
2 jumps found. (Code = 78) Position 1 = 123, Position 2 = 140
Branch analysis from position: 123
2 jumps found. (Code = 77) Position 1 = 127, Position 2 = 137
Branch analysis from position: 127
2 jumps found. (Code = 78) Position 1 = 128, Position 2 = 137
Branch analysis from position: 128
2 jumps found. (Code = 43) Position 1 = 132, Position 2 = 133
Branch analysis from position: 132
1 jumps found. (Code = 42) Position 1 = 127
Branch analysis from position: 127
Branch analysis from position: 133
Branch analysis from position: 137
1 jumps found. (Code = 42) Position 1 = 122
Branch analysis from position: 122
Branch analysis from position: 137
Branch analysis from position: 140
1 jumps found. (Code = 62) Position 1 = -2
Branch analysis from position: 140
Branch analysis from position: 117
Branch analysis from position: 4
2 jumps found. (Code = 43) Position 1 = 9, Position 2 = 13
Branch analysis from position: 9
2 jumps found. (Code = 43) Position 1 = 18, Position 2 = 22
Branch analysis from position: 18
2 jumps found. (Code = 43) Position 1 = 27, Position 2 = 31
Branch analysis from position: 27
2 jumps found. (Code = 43) Position 1 = 36, Position 2 = 40
Branch analysis from position: 36
2 jumps found. (Code = 43) Position 1 = 45, Position 2 = 49
Branch analysis from position: 45
2 jumps found. (Code = 43) Position 1 = 54, Position 2 = 58
Branch analysis from position: 54
2 jumps found. (Code = 43) Position 1 = 63, Position 2 = 67
Branch analysis from position: 63
2 jumps found. (Code = 43) Position 1 = 72, Position 2 = 76
Branch analysis from position: 72
2 jumps found. (Code = 43) Position 1 = 81, Position 2 = 85
Branch analysis from position: 81
2 jumps found. (Code = 43) Position 1 = 90, Position 2 = 94
Branch analysis from position: 90
2 jumps found. (Code = 44) Position 1 = 97, Position 2 = 4
Branch analysis from position: 97
Branch analysis from position: 4
Branch analysis from position: 94
Branch analysis from position: 85
Branch analysis from position: 76
Branch analysis from position: 67
Branch analysis from position: 58
Branch analysis from position: 49
Branch analysis from position: 40
Branch analysis from position: 31
Branch analysis from position: 22
Branch analysis from position: 13
filename:       /in/tJHGX
function name:  (null)
number of ops:  142
compiled vars:  !0 = $_rows, !1 = $_sub_categories, !2 = $i, !3 = $val, !4 = $key, !5 = $_subcat, !6 = $j, !7 = $_sub_category
line      #* E I O op                           fetch          ext  return  operands
-------------------------------------------------------------------------------------
    2     0  E >   ASSIGN                                                   !0, <array>
    3     1        ASSIGN                                                   !1, <array>
    5     2        ASSIGN                                                   !2, 1
          3      > JMP                                                      ->95
    7     4    >   INIT_FCALL                                               'in_array'
          5        SEND_VAR                                                 !2
          6        SEND_VAL                                                 <array>
          7        DO_ICALL                                         $11     
          8      > JMPZ                                                     $11, ->13
    8     9    >   CONCAT                                           ~14     'Category+', !2
         10        FETCH_DIM_W                                      $12     !0, 'row1'
         11        ASSIGN_DIM                                               $12
         12        OP_DATA                                                  ~14
   11    13    >   INIT_FCALL                                               'in_array'
         14        SEND_VAR                                                 !2
         15        SEND_VAL                                                 <array>
         16        DO_ICALL                                         $15     
         17      > JMPZ                                                     $15, ->22
   12    18    >   CONCAT                                           ~18     'Category+', !2
         19        FETCH_DIM_W                                      $16     !0, 'row2'
         20        ASSIGN_DIM                                               $16
         21        OP_DATA                                                  ~18
   15    22    >   INIT_FCALL                                               'in_array'
         23        SEND_VAR                                                 !2
         24        SEND_VAL                                                 <array>
         25        DO_ICALL                                         $19     
         26      > JMPZ                                                     $19, ->31
   16    27    >   CONCAT                                           ~22     'Category+', !2
         28        FETCH_DIM_W                                      $20     !0, 'row3'
         29        ASSIGN_DIM                                               $20
         30        OP_DATA                                                  ~22
   19    31    >   INIT_FCALL                                               'in_array'
         32        SEND_VAR                                                 !2
         33        SEND_VAL                                                 <array>
         34        DO_ICALL                                         $23     
         35      > JMPZ                                                     $23, ->40
   20    36    >   CONCAT                                           ~26     'Category+', !2
         37        FETCH_DIM_W                                      $24     !0, 'row4'
         38        ASSIGN_DIM                                               $24
         39        OP_DATA                                                  ~26
   23    40    >   INIT_FCALL                                               'in_array'
         41        SEND_VAR                                                 !2
         42        SEND_VAL                                                 <array>
         43        DO_ICALL                                         $27     
         44      > JMPZ                                                     $27, ->49
   24    45    >   CONCAT                                           ~30     'Category+', !2
         46        FETCH_DIM_W                                      $28     !0, 'row5'
         47        ASSIGN_DIM                                               $28
         48        OP_DATA                                                  ~30
   27    49    >   INIT_FCALL                                               'in_array'
         50        SEND_VAR                                                 !2
         51        SEND_VAL                                                 <array>
         52        DO_ICALL                                         $31     
         53      > JMPZ                                                     $31, ->58
   28    54    >   CONCAT                                           ~34     'Category+', !2
         55        FETCH_DIM_W                                      $32     !0, 'row6'
         56        ASSIGN_DIM                                               $32
         57        OP_DATA                                                  ~34
   31    58    >   INIT_FCALL                                               'in_array'
         59        SEND_VAR                                                 !2
         60        SEND_VAL                                                 <array>
         61        DO_ICALL                                         $35     
         62      > JMPZ                                                     $35, ->67
   32    63    >   CONCAT                                           ~38     'Category+', !2
         64        FETCH_DIM_W                                      $36     !0, 'row7'
         65        ASSIGN_DIM                                               $36
         66        OP_DATA                                                  ~38
   35    67    >   INIT_FCALL                                               'in_array'
         68        SEND_VAR                                                 !2
         69        SEND_VAL                                                 <array>
         70        DO_ICALL                                         $39     
         71      > JMPZ                                                     $39, ->76
   36    72    >   CONCAT                                           ~42     'Category+', !2
         73        FETCH_DIM_W                                      $40     !0, 'row8'
         74        ASSIGN_DIM                                               $40
         75        OP_DATA                                                  ~42
   39    76    >   INIT_FCALL                                               'in_array'
         77        SEND_VAR                                                 !2
         78        SEND_VAL                                                 <array>
         79        DO_ICALL                                         $43     
         80      > JMPZ                                                     $43, ->85
   40    81    >   CONCAT                                           ~46     'Category+', !2
         82        FETCH_DIM_W                                      $44     !0, 'row9'
         83        ASSIGN_DIM                                               $44
         84        OP_DATA                                                  ~46
   44    85    >   INIT_FCALL                                               'in_array'
         86        SEND_VAR                                                 !2
         87        SEND_VAL                                                 <array>
         88        DO_ICALL                                         $47     
         89      > JMPZ                                                     $47, ->94
   45    90    >   CONCAT                                           ~50     'Category+', !2
         91        FETCH_DIM_W                                      $48     !0, 'row10'
         92        ASSIGN_DIM                                               $48
         93        OP_DATA                                                  ~50
    5    94    >   PRE_INC                                                  !2
         95    >   IS_SMALLER_OR_EQUAL                                      !2, 28
         96      > JMPNZ                                                    ~52, ->4
   51    97    > > FE_RESET_R                                       $53     !0, ->117
         98    > > FE_FETCH_R                                       ~54     $53, !3, ->117
         99    >   ASSIGN                                                   !4, ~54
   52   100        IN_ARRAY                                                 !4, <array>
        101      > JMPZ                                                     ~56, ->104
   53   102    >   ASSIGN_DIM                                               !1, 1
        103        OP_DATA                                                  !3
   56   104    >   IN_ARRAY                                                 !4, <array>
        105      > JMPZ                                                     ~58, ->108
   57   106    >   ASSIGN_DIM                                               !1, 2
        107        OP_DATA                                                  !3
   60   108    >   IN_ARRAY                                                 !4, <array>
        109      > JMPZ                                                     ~60, ->112
   61   110    >   ASSIGN_DIM                                               !1, 3
        111        OP_DATA                                                  !3
   64   112    >   IN_ARRAY                                                 !4, <array>
        113      > JMPZ                                                     ~62, ->116
   65   114    >   ASSIGN_DIM                                               !1, 4
        115        OP_DATA                                                  !3
   51   116    > > JMP                                                      ->98
        117    >   FE_FREE                                                  $53
   70   118        INIT_FCALL                                               'print_r'
        119        SEND_VAR                                                 !1
        120        DO_ICALL                                                 
   73   121      > FE_RESET_R                                       $65     !1, ->140
        122    > > FE_FETCH_R                                               $65, !5, ->140
   74   123    >   ECHO                                                     '++++%3Cul%3E%0A++++++++'
   75   124        ASSIGN                                                   !6, 0
   76   125        ECHO                                                     '++++++++'
        126      > FE_RESET_R                                       $67     !5, ->137
        127    > > FE_FETCH_R                                               $67, !7, ->137
        128    >   PRE_INC                                                  !6
   77   129        ECHO                                                     '++++++++%3Cli+'
        130        IS_EQUAL                                                 !6, 1
        131      > JMPZ                                                     ~69, ->133
        132    >   ECHO                                                     'class%3D%22first%22'
        133    >   ECHO                                                     '%3E'
        134        ECHO                                                     !7
        135        ECHO                                                     '%3C%2Fli%3E%0A++++%09'
   76   136      > JMP                                                      ->127
        137    >   FE_FREE                                                  $67
   79   138        ECHO                                                     '++++%3C%2Ful%3E%0A'
   73   139      > JMP                                                      ->122
        140    >   FE_FREE                                                  $65
   80   141      > RETURN                                                   1

Generated using Vulcan Logic Dumper, using php 8.0.0


preferences:
163.87 ms | 1400 KiB | 17 Q