3v4l.org

run code in 500+ PHP versions simultaneously
<?php $query = [1 => (object) ['materialized' => false]]; var_dump(match (true) { ($query[1]?->materialized ?? null) === true => 'MATERIALIZED ', ($query[1]?->materialized ?? null) === false => 'NOT MATERIALIZED ', default => '', }); var_dump(match ($query[1]?->materialized ?? null) { true => 'MATERIALIZED ', false => 'NOT MATERIALIZED ', default => '', });
Finding entry points
Branch analysis from position: 0
2 jumps found. (Code = 44) Position 1 = 12, Position 2 = 21
Branch analysis from position: 12
2 jumps found. (Code = 44) Position 1 = 20, Position 2 = 23
Branch analysis from position: 20
1 jumps found. (Code = 42) Position 1 = 25
Branch analysis from position: 25
1 jumps found. (Code = 42) Position 1 = 27
Branch analysis from position: 27
2 jumps found. (Code = 44) Position 1 = 37, Position 2 = 40
Branch analysis from position: 37
2 jumps found. (Code = 44) Position 1 = 39, Position 2 = 42
Branch analysis from position: 39
1 jumps found. (Code = 42) Position 1 = 44
Branch analysis from position: 44
1 jumps found. (Code = 42) Position 1 = 46
Branch analysis from position: 46
1 jumps found. (Code = 62) Position 1 = -2
Branch analysis from position: 42
1 jumps found. (Code = 42) Position 1 = 46
Branch analysis from position: 46
Branch analysis from position: 40
1 jumps found. (Code = 42) Position 1 = 46
Branch analysis from position: 46
Branch analysis from position: 23
1 jumps found. (Code = 42) Position 1 = 27
Branch analysis from position: 27
Branch analysis from position: 21
1 jumps found. (Code = 42) Position 1 = 27
Branch analysis from position: 27
filename:       /in/uqFNN
function name:  (null)
number of ops:  50
compiled vars:  !0 = $query
line      #* E I O op                               fetch          ext  return  operands
-----------------------------------------------------------------------------------------
    3     0  E >   CAST                                              8  ~1      <array>
          1        INIT_ARRAY                                           ~2      ~1, 1
          2        ASSIGN                                                       !0, ~2
    5     3        INIT_FCALL                                                   'var_dump'
    6     4        FETCH_DIM_IS                                         ~5      !0, 1
          5        JMP_NULL                                             ~6      ~5
          6        FETCH_OBJ_IS                                         ~6      ~5, 'materialized'
          7        COALESCE                                             ~7      ~6
    5     8        QM_ASSIGN                                            ~7      null
          9        TYPE_CHECK                                        8  ~8      ~7
         10        IS_IDENTICAL                                                 ~8, <true>
         11      > JMPNZ                                                        ~4, ->21
    7    12    >   FETCH_DIM_IS                                         ~9      !0, 1
         13        JMP_NULL                                             ~10     ~9
         14        FETCH_OBJ_IS                                         ~10     ~9, 'materialized'
         15        COALESCE                                             ~11     ~10
         16        QM_ASSIGN                                            ~11     null
         17        TYPE_CHECK                                        4  ~12     ~11
         18        IS_IDENTICAL                                                 ~12, <true>
         19      > JMPNZ                                                        ~4, ->23
         20    > > JMP                                                          ->25
    6    21    >   QM_ASSIGN                                            ~13     'MATERIALIZED+'
         22      > JMP                                                          ->27
    7    23    >   QM_ASSIGN                                            ~13     'NOT+MATERIALIZED+'
         24      > JMP                                                          ->27
    8    25    >   QM_ASSIGN                                            ~13     ''
         26      > JMP                                                          ->27
         27    >   SEND_VAL                                                     ~13
    5    28        DO_ICALL                                                     
   11    29        INIT_FCALL                                                   'var_dump'
         30        FETCH_DIM_IS                                         ~15     !0, 1
         31        JMP_NULL                                             ~16     ~15
         32        FETCH_OBJ_IS                                         ~16     ~15, 'materialized'
         33        COALESCE                                             ~17     ~16
         34        QM_ASSIGN                                            ~17     null
         35        CASE_STRICT                                                  ~17, <true>
         36      > JMPNZ                                                        ~18, ->40
   13    37    >   CASE_STRICT                                                  ~17, <false>
         38      > JMPNZ                                                        ~18, ->42
         39    > > JMP                                                          ->44
   12    40    >   QM_ASSIGN                                            ~19     'MATERIALIZED+'
         41      > JMP                                                          ->46
   13    42    >   QM_ASSIGN                                            ~19     'NOT+MATERIALIZED+'
         43      > JMP                                                          ->46
   14    44    >   QM_ASSIGN                                            ~19     ''
         45      > JMP                                                          ->46
         46    >   FREE                                                         ~17
         47        SEND_VAL                                                     ~19
   11    48        DO_ICALL                                                     
   15    49      > RETURN                                                       1

Generated using Vulcan Logic Dumper, using php 8.5.0


preferences:
128.76 ms | 1340 KiB | 14 Q