3v4l.org

run code in 300+ PHP versions simultaneously
<?php error_reporting(-1); $hello = $a['hello'] ?? $b['hi'] ?? $c['hello'] ?? null; print_r($hello);
Finding entry points
Branch analysis from position: 0
1 jumps found. (Code = 62) Position 1 = -2
filename:       /in/XrWCQ
function name:  (null)
number of ops:  17
compiled vars:  !0 = $hello, !1 = $a, !2 = $b, !3 = $c
line      #* E I O op                           fetch          ext  return  operands
-------------------------------------------------------------------------------------
    2     0  E >   INIT_FCALL                                               'error_reporting'
          1        SEND_VAL                                                 -1
          2        DO_ICALL                                                 
    4     3        FETCH_DIM_IS                                     ~5      !1, 'hello'
          4        COALESCE                                         ~6      ~5
          5        FETCH_DIM_IS                                     ~7      !2, 'hi'
          6        COALESCE                                         ~8      ~7
          7        FETCH_DIM_IS                                     ~9      !3, 'hello'
          8        COALESCE                                         ~10     ~9
          9        QM_ASSIGN                                        ~10     null
         10        QM_ASSIGN                                        ~8      ~10
         11        QM_ASSIGN                                        ~6      ~8
         12        ASSIGN                                                   !0, ~6
    6    13        INIT_FCALL                                               'print_r'
         14        SEND_VAR                                                 !0
         15        DO_ICALL                                                 
         16      > RETURN                                                   1

Generated using Vulcan Logic Dumper, using php 8.0.0


preferences:
191.57 ms | 1394 KiB | 17 Q