3v4l.org

run code in 300+ PHP versions simultaneously
<?php function &find_var($one, $two, $three) { if(($one > 0) && ($one <= 10)) return $one; if(($two > 0) && ($two <= 10)) return $two; if(($three > 0) && ($three <= 10)) return $three; } $c_one = 'foo'; $c_two = 42; $c_three = 4; $right_var = &find_var($c_one, $c_two, $c_three); $right_var++; echo "The value of \$c_three and \$right_var are: "; echo "$c_three and $right_var<BR>\n"; ?>
Finding entry points
Branch analysis from position: 0
1 jumps found. (Code = 62) Position 1 = -2
filename:       /in/spClr
function name:  (null)
number of ops:  17
compiled vars:  !0 = $c_one, !1 = $c_two, !2 = $c_three, !3 = $right_var
line      #* E I O op                           fetch          ext  return  operands
-------------------------------------------------------------------------------------
   11     0  E >   ASSIGN                                                   !0, 'foo'
   12     1        ASSIGN                                                   !1, 42
   13     2        ASSIGN                                                   !2, 4
   15     3        INIT_FCALL                                               'find_var'
          4        SEND_VAR                                                 !0
          5        SEND_VAR                                                 !1
          6        SEND_VAR                                                 !2
          7        DO_FCALL                                      0  $7      
          8        ASSIGN_REF                                               !3, $7
   17     9        PRE_INC                                                  !3
   19    10        ECHO                                                     'The+value+of+%24c_three+and+%24right_var+are%3A+'
   20    11        ROPE_INIT                                     4  ~11     !2
         12        ROPE_ADD                                      1  ~11     ~11, '+and+'
         13        ROPE_ADD                                      2  ~11     ~11, !3
         14        ROPE_END                                      3  ~10     ~11, '%3CBR%3E%0A'
         15        ECHO                                                     ~10
   22    16      > RETURN                                                   1

Function find_var:
Finding entry points
Branch analysis from position: 0
2 jumps found. (Code = 46) Position 1 = 5, Position 2 = 7
Branch analysis from position: 5
2 jumps found. (Code = 43) Position 1 = 8, Position 2 = 9
Branch analysis from position: 8
Return found
Branch analysis from position: 9
2 jumps found. (Code = 46) Position 1 = 11, Position 2 = 13
Branch analysis from position: 11
2 jumps found. (Code = 43) Position 1 = 14, Position 2 = 15
Branch analysis from position: 14
Return found
Branch analysis from position: 15
2 jumps found. (Code = 46) Position 1 = 17, Position 2 = 19
Branch analysis from position: 17
2 jumps found. (Code = 43) Position 1 = 20, Position 2 = 21
Branch analysis from position: 20
Return found
Branch analysis from position: 21
Return found
Branch analysis from position: 19
Branch analysis from position: 13
Branch analysis from position: 7
filename:       /in/spClr
function name:  find_var
number of ops:  22
compiled vars:  !0 = $one, !1 = $two, !2 = $three
line      #* E I O op                           fetch          ext  return  operands
-------------------------------------------------------------------------------------
    3     0  E >   RECV                                             !0      
          1        RECV                                             !1      
          2        RECV                                             !2      
    5     3        IS_SMALLER                                       ~3      0, !0
          4      > JMPZ_EX                                          ~3      ~3, ->7
          5    >   IS_SMALLER_OR_EQUAL                              ~4      !0, 10
          6        BOOL                                             ~3      ~4
          7    > > JMPZ                                                     ~3, ->9
          8    > > RETURN_BY_REF                                            !0
    6     9    >   IS_SMALLER                                       ~5      0, !1
         10      > JMPZ_EX                                          ~5      ~5, ->13
         11    >   IS_SMALLER_OR_EQUAL                              ~6      !1, 10
         12        BOOL                                             ~5      ~6
         13    > > JMPZ                                                     ~5, ->15
         14    > > RETURN_BY_REF                                            !1
    7    15    >   IS_SMALLER                                       ~7      0, !2
         16      > JMPZ_EX                                          ~7      ~7, ->19
         17    >   IS_SMALLER_OR_EQUAL                              ~8      !2, 10
         18        BOOL                                             ~7      ~8
         19    > > JMPZ                                                     ~7, ->21
         20    > > RETURN_BY_REF                                            !2
    9    21    > > RETURN_BY_REF                                            null

End of function find_var

Generated using Vulcan Logic Dumper, using php 8.0.0


preferences:
154.21 ms | 1403 KiB | 14 Q