3v4l.org

run code in 200+ php & hhvm versions
Bugs & Features
<?php function doSomething( &$arg ) { $return = $arg; $arg += 1; echo $return; return $return; } $a = 3; $b = doSomething( $a ); echo "a=$a,b=$b";
Finding entry points
Branch analysis from position: 0
Jump found. Position 1 = -2
filename:       /in/8hkQZ
function name:  (null)
number of ops:  12
compiled vars:  !0 = $a, !1 = $b
line     #* E I O op                           fetch          ext  return  operands
-------------------------------------------------------------------------------------
   2     0  E >   NOP                                                      
  11     1        ASSIGN                                                   !0, 3
  12     2        INIT_FCALL                                               'dosomething'
         3        SEND_REF                                                 !0
         4        DO_FCALL                                      0  $3      
         5        ASSIGN                                                   !1, $3
  13     6        ROPE_INIT                                     4  ~6      'a%3D'
         7        ROPE_ADD                                      1  ~6      ~6, !0
         8        ROPE_ADD                                      2  ~6      ~6, '%2Cb%3D'
         9        ROPE_END                                      3  ~5      ~6, !1
        10        ECHO                                                     ~5
        11      > RETURN                                                   1

Function dosomething:
Finding entry points
Branch analysis from position: 0
Jump found. Position 1 = -2
filename:       /in/8hkQZ
function name:  doSomething
number of ops:  6
compiled vars:  !0 = $arg, !1 = $return
line     #* E I O op                           fetch          ext  return  operands
-------------------------------------------------------------------------------------
   2     0  E >   RECV                                             !0      
   5     1        ASSIGN                                                   !1, !0
   6     2        ASSIGN_ADD                                    0          !0, 1
   7     3        ECHO                                                     !1
   8     4      > RETURN                                                   !1
   9     5*     > RETURN                                                   null

End of function dosomething

Generated using Vulcan Logic Dumper, using php 7.2.0