3v4l.org

run code in 300+ PHP versions simultaneously
<?php $a = [ 1 => [ [ 'key' => 'fe', 'name' => 'En plantilla a dedicación completa', 'dedication' => self::FULLTIME, 'relationship' => self::EMPLOYEE ], [ 'key' => 'ff', 'name' => 'Freelance a dedicación completa', 'dedication' => self::FULLTIME, 'relationship' => self::FREELANCER ], ], 2 => [ [ 'name' => 'En Plantilla', 'childs' => [ [ 'key' => 'pem', 'name' => 'Mañanas', 'dedication' => self::PARTTIME, 'relationship' => self::EMPLOYEE, 'shiftPreference' => self::MORNING_SHIFT ], [ 'key' => 'pea', 'name' => 'Tardes', 'dedication' => self::PARTTIME, 'relationship' => self::EMPLOYEE, 'shiftPreference' => self::AFTERNOON_SHIFT ], [ 'key' => 'ped', 'name' => 'Indistinto', 'dedication' => self::PARTTIME, 'relationship' => self::EMPLOYEE, 'shiftPreference' => self::DOES_NOT_MATTER ], ], ], [ 'name' => 'Freelance', 'childs' => [ [ 'name' => 'Mañanas', 'childs' => [ [ 'key' => 'pfmm', 'name' => 'Más de 3 horas/día', 'dedication' => self::PARTTIME, 'relationship' => self::FREELANCER, 'shiftPreference' => self::MORNING_SHIFT, 'hoursOfService' => self::MORE_THAN_3H ], [ 'key' => 'pfml', 'name' => 'Menos de 3 horas/día', 'parent' => 8, 'dedication' => self::PARTTIME, 'relationship' => self::FREELANCER, 'shiftPreference' => self::MORNING_SHIFT, 'hoursOfService' => self::LESS_THAN_3H ], ], ], [ 'name' => 'Tardes', 'childs' => [ [ 'key' => 'pfam', 'name' => 'Más de 3 horas/día', 'dedication' => self::PARTTIME, 'relationship' => self::FREELANCER, 'shiftPreference' => self::AFTERNOON_SHIFT, 'hoursOfService' => self::MORE_THAN_3H ], [ 'key' => 'pfal', 'name' => 'Menos de 3 horas/día', 'dedication' => self::PARTTIME, 'relationship' => self::FREELANCER, 'shiftPreference' => self::AFTERNOON_SHIFT, 'hoursOfService' => self::LESS_THAN_3H ], ], ], [ 'name' => 'Indistinto', 'childs' => [ [ 'key' => 'pfdm', 'name' => 'Más de 3 horas/día', 'dedication' => self::PARTTIME, 'relationship' => self::FREELANCER, 'shiftPreference' => self::DOES_NOT_MATTER, 'hoursOfService' => self::MORE_THAN_3H ], [ 'key' => 'pfdl', 'name' => 'Menos de 3 horas/día', 'dedication' => self::PARTTIME, 'relationship' => self::FREELANCER, 'shiftPreference' => self::DOES_NOT_MATTER, 'hoursOfService' => self::LESS_THAN_3H ], ], ], ], ], ], ]; $results = $a[1]; array_walk_recursive($results, function(&$a){ unset($a['dedication'], $a['relationship'], $a['shiftPreference'], $a['hoursOfService']); }); var_dump($results); var_dump($a);
Finding entry points
Branch analysis from position: 0
1 jumps found. (Code = 62) Position 1 = -2
filename:       /in/OHq93
function name:  (null)
number of ops:  140
compiled vars:  !0 = $a, !1 = $results
line      #* E I O op                           fetch          ext  return  operands
-------------------------------------------------------------------------------------
    5     0  E >   INIT_ARRAY                                       ~2      'fe', 'key'
    6     1        ADD_ARRAY_ELEMENT                                ~2      'En+plantilla+a+dedicaci%C3%B3n+completa', 'name'
    7     2        FETCH_CLASS_CONSTANT                             ~3      'FULLTIME'
          3        ADD_ARRAY_ELEMENT                                ~2      ~3, 'dedication'
    8     4        FETCH_CLASS_CONSTANT                             ~4      'EMPLOYEE'
          5        ADD_ARRAY_ELEMENT                                ~2      ~4, 'relationship'
          6        INIT_ARRAY                                       ~5      ~2
   11     7        INIT_ARRAY                                       ~6      'ff', 'key'
   12     8        ADD_ARRAY_ELEMENT                                ~6      'Freelance+a+dedicaci%C3%B3n+completa', 'name'
   13     9        FETCH_CLASS_CONSTANT                             ~7      'FULLTIME'
         10        ADD_ARRAY_ELEMENT                                ~6      ~7, 'dedication'
   14    11        FETCH_CLASS_CONSTANT                             ~8      'FREELANCER'
         12        ADD_ARRAY_ELEMENT                                ~6      ~8, 'relationship'
         13        ADD_ARRAY_ELEMENT                                ~5      ~6
         14        INIT_ARRAY                                       ~9      ~5, 1
   19    15        INIT_ARRAY                                       ~10     'En+Plantilla', 'name'
   22    16        INIT_ARRAY                                       ~11     'pem', 'key'
   23    17        ADD_ARRAY_ELEMENT                                ~11     'Ma%C3%B1anas', 'name'
   24    18        FETCH_CLASS_CONSTANT                             ~12     'PARTTIME'
         19        ADD_ARRAY_ELEMENT                                ~11     ~12, 'dedication'
   25    20        FETCH_CLASS_CONSTANT                             ~13     'EMPLOYEE'
         21        ADD_ARRAY_ELEMENT                                ~11     ~13, 'relationship'
   26    22        FETCH_CLASS_CONSTANT                             ~14     'MORNING_SHIFT'
         23        ADD_ARRAY_ELEMENT                                ~11     ~14, 'shiftPreference'
         24        INIT_ARRAY                                       ~15     ~11
   29    25        INIT_ARRAY                                       ~16     'pea', 'key'
   30    26        ADD_ARRAY_ELEMENT                                ~16     'Tardes', 'name'
   31    27        FETCH_CLASS_CONSTANT                             ~17     'PARTTIME'
         28        ADD_ARRAY_ELEMENT                                ~16     ~17, 'dedication'
   32    29        FETCH_CLASS_CONSTANT                             ~18     'EMPLOYEE'
         30        ADD_ARRAY_ELEMENT                                ~16     ~18, 'relationship'
   33    31        FETCH_CLASS_CONSTANT                             ~19     'AFTERNOON_SHIFT'
         32        ADD_ARRAY_ELEMENT                                ~16     ~19, 'shiftPreference'
         33        ADD_ARRAY_ELEMENT                                ~15     ~16
   36    34        INIT_ARRAY                                       ~20     'ped', 'key'
   37    35        ADD_ARRAY_ELEMENT                                ~20     'Indistinto', 'name'
   38    36        FETCH_CLASS_CONSTANT                             ~21     'PARTTIME'
         37        ADD_ARRAY_ELEMENT                                ~20     ~21, 'dedication'
   39    38        FETCH_CLASS_CONSTANT                             ~22     'EMPLOYEE'
         39        ADD_ARRAY_ELEMENT                                ~20     ~22, 'relationship'
   40    40        FETCH_CLASS_CONSTANT                             ~23     'DOES_NOT_MATTER'
         41        ADD_ARRAY_ELEMENT                                ~20     ~23, 'shiftPreference'
         42        ADD_ARRAY_ELEMENT                                ~15     ~20
         43        ADD_ARRAY_ELEMENT                                ~10     ~15, 'childs'
         44        INIT_ARRAY                                       ~24     ~10
   45    45        INIT_ARRAY                                       ~25     'Freelance', 'name'
   48    46        INIT_ARRAY                                       ~26     'Ma%C3%B1anas', 'name'
   51    47        INIT_ARRAY                                       ~27     'pfmm', 'key'
   52    48        ADD_ARRAY_ELEMENT                                ~27     'M%C3%A1s+de+3+horas%2Fd%C3%ADa', 'name'
   53    49        FETCH_CLASS_CONSTANT                             ~28     'PARTTIME'
         50        ADD_ARRAY_ELEMENT                                ~27     ~28, 'dedication'
   54    51        FETCH_CLASS_CONSTANT                             ~29     'FREELANCER'
         52        ADD_ARRAY_ELEMENT                                ~27     ~29, 'relationship'
   55    53        FETCH_CLASS_CONSTANT                             ~30     'MORNING_SHIFT'
         54        ADD_ARRAY_ELEMENT                                ~27     ~30, 'shiftPreference'
   56    55        FETCH_CLASS_CONSTANT                             ~31     'MORE_THAN_3H'
         56        ADD_ARRAY_ELEMENT                                ~27     ~31, 'hoursOfService'
         57        INIT_ARRAY                                       ~32     ~27
   59    58        INIT_ARRAY                                       ~33     'pfml', 'key'
   60    59        ADD_ARRAY_ELEMENT                                ~33     'Menos+de+3+horas%2Fd%C3%ADa', 'name'
   61    60        ADD_ARRAY_ELEMENT                                ~33     8, 'parent'
   62    61        FETCH_CLASS_CONSTANT                             ~34     'PARTTIME'
         62        ADD_ARRAY_ELEMENT                                ~33     ~34, 'dedication'
   63    63        FETCH_CLASS_CONSTANT                             ~35     'FREELANCER'
         64        ADD_ARRAY_ELEMENT                                ~33     ~35, 'relationship'
   64    65        FETCH_CLASS_CONSTANT                             ~36     'MORNING_SHIFT'
         66        ADD_ARRAY_ELEMENT                                ~33     ~36, 'shiftPreference'
   65    67        FETCH_CLASS_CONSTANT                             ~37     'LESS_THAN_3H'
         68        ADD_ARRAY_ELEMENT                                ~33     ~37, 'hoursOfService'
         69        ADD_ARRAY_ELEMENT                                ~32     ~33
         70        ADD_ARRAY_ELEMENT                                ~26     ~32, 'childs'
         71        INIT_ARRAY                                       ~38     ~26
   70    72        INIT_ARRAY                                       ~39     'Tardes', 'name'
   73    73        INIT_ARRAY                                       ~40     'pfam', 'key'
   74    74        ADD_ARRAY_ELEMENT                                ~40     'M%C3%A1s+de+3+horas%2Fd%C3%ADa', 'name'
   75    75        FETCH_CLASS_CONSTANT                             ~41     'PARTTIME'
         76        ADD_ARRAY_ELEMENT                                ~40     ~41, 'dedication'
   76    77        FETCH_CLASS_CONSTANT                             ~42     'FREELANCER'
         78        ADD_ARRAY_ELEMENT                                ~40     ~42, 'relationship'
   77    79        FETCH_CLASS_CONSTANT                             ~43     'AFTERNOON_SHIFT'
         80        ADD_ARRAY_ELEMENT                                ~40     ~43, 'shiftPreference'
   78    81        FETCH_CLASS_CONSTANT                             ~44     'MORE_THAN_3H'
         82        ADD_ARRAY_ELEMENT                                ~40     ~44, 'hoursOfService'
         83        INIT_ARRAY                                       ~45     ~40
   81    84        INIT_ARRAY                                       ~46     'pfal', 'key'
   82    85        ADD_ARRAY_ELEMENT                                ~46     'Menos+de+3+horas%2Fd%C3%ADa', 'name'
   83    86        FETCH_CLASS_CONSTANT                             ~47     'PARTTIME'
         87        ADD_ARRAY_ELEMENT                                ~46     ~47, 'dedication'
   84    88        FETCH_CLASS_CONSTANT                             ~48     'FREELANCER'
         89        ADD_ARRAY_ELEMENT                                ~46     ~48, 'relationship'
   85    90        FETCH_CLASS_CONSTANT                             ~49     'AFTERNOON_SHIFT'
         91        ADD_ARRAY_ELEMENT                                ~46     ~49, 'shiftPreference'
   86    92        FETCH_CLASS_CONSTANT                             ~50     'LESS_THAN_3H'
         93        ADD_ARRAY_ELEMENT                                ~46     ~50, 'hoursOfService'
         94        ADD_ARRAY_ELEMENT                                ~45     ~46
         95        ADD_ARRAY_ELEMENT                                ~39     ~45, 'childs'
         96        ADD_ARRAY_ELEMENT                                ~38     ~39
   91    97        INIT_ARRAY                                       ~51     'Indistinto', 'name'
   94    98        INIT_ARRAY                                       ~52     'pfdm', 'key'
   95    99        ADD_ARRAY_ELEMENT                                ~52     'M%C3%A1s+de+3+horas%2Fd%C3%ADa', 'name'
   96   100        FETCH_CLASS_CONSTANT                             ~53     'PARTTIME'
        101        ADD_ARRAY_ELEMENT                                ~52     ~53, 'dedication'
   97   102        FETCH_CLASS_CONSTANT                             ~54     'FREELANCER'
        103        ADD_ARRAY_ELEMENT                                ~52     ~54, 'relationship'
   98   104        FETCH_CLASS_CONSTANT                             ~55     'DOES_NOT_MATTER'
        105        ADD_ARRAY_ELEMENT                                ~52     ~55, 'shiftPreference'
   99   106        FETCH_CLASS_CONSTANT                             ~56     'MORE_THAN_3H'
        107        ADD_ARRAY_ELEMENT                                ~52     ~56, 'hoursOfService'
        108        INIT_ARRAY                                       ~57     ~52
  102   109        INIT_ARRAY                                       ~58     'pfdl', 'key'
  103   110        ADD_ARRAY_ELEMENT                                ~58     'Menos+de+3+horas%2Fd%C3%ADa', 'name'
  104   111        FETCH_CLASS_CONSTANT                             ~59     'PARTTIME'
        112        ADD_ARRAY_ELEMENT                                ~58     ~59, 'dedication'
  105   113        FETCH_CLASS_CONSTANT                             ~60     'FREELANCER'
        114        ADD_ARRAY_ELEMENT                                ~58     ~60, 'relationship'
  106   115        FETCH_CLASS_CONSTANT                             ~61     'DOES_NOT_MATTER'
        116        ADD_ARRAY_ELEMENT                                ~58     ~61, 'shiftPreference'
  107   117        FETCH_CLASS_CONSTANT                             ~62     'LESS_THAN_3H'
        118        ADD_ARRAY_ELEMENT                                ~58     ~62, 'hoursOfService'
        119        ADD_ARRAY_ELEMENT                                ~57     ~58
        120        ADD_ARRAY_ELEMENT                                ~51     ~57, 'childs'
        121        ADD_ARRAY_ELEMENT                                ~38     ~51
        122        ADD_ARRAY_ELEMENT                                ~25     ~38, 'childs'
        123        ADD_ARRAY_ELEMENT                                ~24     ~25
        124        ADD_ARRAY_ELEMENT                                ~9      ~24, 2
    2   125        ASSIGN                                                   !0, ~9
  116   126        FETCH_DIM_R                                      ~64     !0, 1
        127        ASSIGN                                                   !1, ~64
  117   128        INIT_FCALL                                               'array_walk_recursive'
        129        SEND_REF                                                 !1
        130        DECLARE_LAMBDA_FUNCTION                                  '%00%7Bclosure%7D%2Fin%2FOHq93%3A117%240'
  119   131        SEND_VAL                                                 ~66
        132        DO_ICALL                                                 
  121   133        INIT_FCALL                                               'var_dump'
        134        SEND_VAR                                                 !1
        135        DO_ICALL                                                 
  122   136        INIT_FCALL                                               'var_dump'
        137        SEND_VAR                                                 !0
        138        DO_ICALL                                                 
        139      > RETURN                                                   1

Function %00%7Bclosure%7D%2Fin%2FOHq93%3A117%240:
Finding entry points
Branch analysis from position: 0
1 jumps found. (Code = 62) Position 1 = -2
filename:       /in/OHq93
function name:  {closure}
number of ops:  6
compiled vars:  !0 = $a
line      #* E I O op                           fetch          ext  return  operands
-------------------------------------------------------------------------------------
  117     0  E >   RECV                                             !0      
  118     1        UNSET_DIM                                                !0, 'dedication'
          2        UNSET_DIM                                                !0, 'relationship'
          3        UNSET_DIM                                                !0, 'shiftPreference'
          4        UNSET_DIM                                                !0, 'hoursOfService'
  119     5      > RETURN                                                   null

End of function %00%7Bclosure%7D%2Fin%2FOHq93%3A117%240

Generated using Vulcan Logic Dumper, using php 8.0.0


preferences:
155.85 ms | 1408 KiB | 17 Q