3v4l.org

run code in 300+ PHP versions simultaneously
<?php function ref(&$a) {} function val($a) {} $b = []; $a = $b['a']['b']; $a =& $b['a']['b']; val($b['a']['b']); ref($b['a']['b']); valn($b['a']['b']); refn($b['a']['b']);
Finding entry points
Branch analysis from position: 0
1 jumps found. (Code = 62) Position 1 = -2
filename:       /in/gLJU8
function name:  (null)
number of ops:  30
compiled vars:  !0 = $b, !1 = $a
line      #* E I O op                           fetch          ext  return  operands
-------------------------------------------------------------------------------------
    6     0  E >   ASSIGN                                                   !0, <array>
    7     1        FETCH_DIM_R                                      ~3      !0, 'a'
          2        FETCH_DIM_R                                      ~4      ~3, 'b'
          3        ASSIGN                                                   !1, ~4
    8     4        FETCH_DIM_W                                      $6      !0, 'a'
          5        FETCH_DIM_W                                      $7      $6, 'b'
          6        ASSIGN_REF                                               !1, $7
    9     7        INIT_FCALL                                               'val'
          8        FETCH_DIM_R                                      ~9      !0, 'a'
          9        FETCH_DIM_R                                      ~10     ~9, 'b'
         10        SEND_VAL                                                 ~10
         11        DO_FCALL                                      0          
   10    12        INIT_FCALL                                               'ref'
         13        FETCH_DIM_W                                      $12     !0, 'a'
         14        FETCH_DIM_W                                      $13     $12, 'b'
         15        SEND_REF                                                 $13
         16        DO_FCALL                                      0          
   12    17        INIT_FCALL_BY_NAME                                       'valn'
         18        CHECK_FUNC_ARG                                           
         19        FETCH_DIM_FUNC_ARG                               $15     !0, 'a'
         20        FETCH_DIM_FUNC_ARG                               $16     $15, 'b'
         21        SEND_FUNC_ARG                                            $16
         22        DO_FCALL                                      0          
   13    23        INIT_FCALL_BY_NAME                                       'refn'
         24        CHECK_FUNC_ARG                                           
         25        FETCH_DIM_FUNC_ARG                               $18     !0, 'a'
         26        FETCH_DIM_FUNC_ARG                               $19     $18, 'b'
         27        SEND_FUNC_ARG                                            $19
         28        DO_FCALL                                      0          
         29      > RETURN                                                   1

Function ref:
Finding entry points
Branch analysis from position: 0
1 jumps found. (Code = 62) Position 1 = -2
filename:       /in/gLJU8
function name:  ref
number of ops:  2
compiled vars:  !0 = $a
line      #* E I O op                           fetch          ext  return  operands
-------------------------------------------------------------------------------------
    3     0  E >   RECV                                             !0      
          1      > RETURN                                                   null

End of function ref

Function val:
Finding entry points
Branch analysis from position: 0
1 jumps found. (Code = 62) Position 1 = -2
filename:       /in/gLJU8
function name:  val
number of ops:  2
compiled vars:  !0 = $a
line      #* E I O op                           fetch          ext  return  operands
-------------------------------------------------------------------------------------
    4     0  E >   RECV                                             !0      
          1      > RETURN                                                   null

End of function val

Generated using Vulcan Logic Dumper, using php 8.0.0


preferences:
162.5 ms | 1399 KiB | 15 Q