3v4l.org

run code in 300+ PHP versions simultaneously
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
Finding entry points
Branch analysis from position: 0
1 jumps found. (Code = 62) Position 1 = -2
filename:       /in/W17AG
function name:  (null)
number of ops:  5
compiled vars:  none
line      #* E I O op                           fetch          ext  return  operands
-------------------------------------------------------------------------------------
   33     0  E >   NEW                                              $0      'A'
          1        DO_FCALL                                      0          
          2        INIT_METHOD_CALL                                         $0, 'b'
          3        DO_FCALL                                      0          
          4      > RETURN                                                   1

Class A:
Function b:
Finding entry points
Branch analysis from position: 0
2 jumps found. (Code = 43) Position 1 = 5, Position 2 = 7
Branch analysis from position: 5
1 jumps found. (Code = 42) Position 1 = 8
Branch analysis from position: 8
2 jumps found. (Code = 43) Position 1 = 21, Position 2 = 23
Branch analysis from position: 21
1 jumps found. (Code = 42) Position 1 = 24
Branch analysis from position: 24
1 jumps found. (Code = 62) Position 1 = -2
Branch analysis from position: 23
1 jumps found. (Code = 62) Position 1 = -2
Branch analysis from position: 7
2 jumps found. (Code = 43) Position 1 = 21, Position 2 = 23
Branch analysis from position: 21
Branch analysis from position: 23
filename:       /in/W17AG
function name:  b
number of ops:  41
compiled vars:  !0 = $b
line      #* E I O op                           fetch          ext  return  operands
-------------------------------------------------------------------------------------
    9     0  E >   FETCH_THIS                                       ~1      
          1        ASSIGN                                                   !0, ~1
   11     2        FETCH_THIS                                       ~3      
          3        IS_IDENTICAL                                             !0, ~3
          4      > JMPZ                                                     ~4, ->7
          5    >   QM_ASSIGN                                        ~5      'yes'
          6      > JMP                                                      ->8
          7    >   QM_ASSIGN                                        ~5      'no'
          8    >   CONCAT                                           ~6      '11%3A+', ~5
          9        CONCAT                                           ~7      ~6, '%0A'
         10        ECHO                                                     ~7
   12    11        ECHO                                                     '%0A'
   14    12        NEW                                              $8      'B'
         13        DO_FCALL                                      0          
         14        INIT_METHOD_CALL                                         $8, 'foo'
         15        SEND_VAR_EX                                              !0
         16        DO_FCALL                                      0          
   16    17        ECHO                                                     '%0A'
   17    18        FETCH_THIS                                       ~11     
         19        IS_IDENTICAL                                             !0, ~11
         20      > JMPZ                                                     ~12, ->23
         21    >   QM_ASSIGN                                        ~13     'yes'
         22      > JMP                                                      ->24
         23    >   QM_ASSIGN                                        ~13     'no'
         24    >   CONCAT                                           ~14     '17%3A+', ~13
         25        CONCAT                                           ~15     ~14, '%0A'
         26        ECHO                                                     ~15
   18    27        INIT_FCALL                                               'get_debug_type'
         28        SEND_VAR                                                 !0
         29        DO_ICALL                                         $16     
         30        CONCAT                                           ~17     '18%3A+', $16
         31        CONCAT                                           ~18     ~17, '%0A'
         32        ECHO                                                     ~18
   19    33        INIT_FCALL                                               'get_debug_type'
         34        FETCH_THIS                                       ~19     
         35        SEND_VAL                                                 ~19
         36        DO_ICALL                                         $20     
         37        CONCAT                                           ~21     '19%3A+', $20
         38        CONCAT                                           ~22     ~21, '%0A'
         39        ECHO                                                     ~22
   20    40      > RETURN                                                   null

End of function b

End of class A.

Class B:
Function foo:
Finding entry points
Branch analysis from position: 0
1 jumps found. (Code = 62) Position 1 = -2
filename:       /in/W17AG
function name:  foo
number of ops:  15
compiled vars:  !0 = $var
line      #* E I O op                           fetch          ext  return  operands
-------------------------------------------------------------------------------------
   26     0  E >   RECV                                             !0      
   27     1        INIT_FCALL                                               'get_debug_type'
          2        SEND_VAR                                                 !0
          3        DO_ICALL                                         $1      
          4        CONCAT                                           ~2      '27%3A+', $1
          5        CONCAT                                           ~3      ~2, '%0A'
          6        ECHO                                                     ~3
   28     7        ASSIGN                                                   !0, 1
   29     8        INIT_FCALL                                               'get_debug_type'
          9        SEND_VAR                                                 !0
         10        DO_ICALL                                         $5      
         11        CONCAT                                           ~6      '29%3A+', $5
         12        CONCAT                                           ~7      ~6, '%0A'
         13        ECHO                                                     ~7
   30    14      > RETURN                                                   null

End of function foo

End of class B.

Generated using Vulcan Logic Dumper, using php 8.0.0


preferences:
195.37 ms | 973 KiB | 14 Q