3v4l.org

run code in 300+ PHP versions simultaneously
<?php if (substr(PHP_VERSION, 0, 5) !== '7.1.5') die('Meh'); function test($label = '') { global $t; $t2 = microtime(1); if ($label) echo str_pad($label . ': ', 32, '.', STR_PAD_RIGHT) . ' ' . 1000 * ($t2 - $t) . 'ms' . "\n"; $t = $t2; } class A { protected $_val = 123; function getVal() { return $this->_val; } function setVal($val) { $this->_val = $val; } } class A2 { protected $_val = 123; function getVal() { return $this->_val; } function setVal($val) { $this->_val = $val; } function __get($name) { return $this->{'__get_' . $name}($name); } function __set($name, $value) { $this->{'__set_' . $name}($value); } } class B { protected $val = 123; function __get($name) { return $this->{'__get_' . $name}($name); } function __set($name, $value) { $this->{'__set_' . $name}($value); } function __get_val() { return $this->val; } function __set_val($val) { $this->val = $val; } } class C { protected $val = 123; function __get($name) { return $this->val; } function __set($name, $value) { $this->val = $value; } } class D { public $val; function __construct() { $this->val = new Prop(123); } } class D2 { public $val; protected $_val = 123; function __construct() { $this->val = new Prop2(function () { return $this->_val; }, function ($value) { $this->_val = $value; }); } } class Prop { protected $_val = 123; function __construct($val) { $this->_val = $val; } function get() { return $this->_val; } function set($val) { $this->_val = $val; } } class Prop2 { protected $get; protected $set; function __construct($get, $set) { $this->get = $get; $this->set = $set; } function get() { return ($this->get)(); } function set($val) { ($this->set)($val); } } class E { public $val = 123; } $c = 1000000; test(); $x = new A(); for ($i = $c; $i--;) { $a = $x->getVal(); $x->setVal(321); } test('methods'); $x = new A2(); for ($i = $c; $i--;) { $a = $x->getVal(); $x->setVal(321); } test('methods + passive magic'); $x = new B(); for ($i = $c; $i--;) { $a = $x->val; $x->val = 321; } test('magic'); $x = new C(); for ($i = $c; $i--;) { $a = $x->val; $x->val = 321; } test('light magic'); $x = new D(); for ($i = $c; $i--;) { $a = $x->val->get(); $x->val->set(321); } test('nested object'); $x = new D2(); for ($i = $c; $i--;) { $a = $x->val->get(); $x->val->set(321); } test('nested proxy'); $x = new E(); for ($i = $c; $i--;) { $a = $x->val; $x->val = 321; } test('property');
Finding entry points
Branch analysis from position: 0
2 jumps found. (Code = 43) Position 1 = 7, Position 2 = 8
Branch analysis from position: 7
1 jumps found. (Code = 79) Position 1 = -2
Branch analysis from position: 8
1 jumps found. (Code = 42) Position 1 = 22
Branch analysis from position: 22
2 jumps found. (Code = 44) Position 1 = 24, Position 2 = 16
Branch analysis from position: 24
1 jumps found. (Code = 42) Position 1 = 38
Branch analysis from position: 38
2 jumps found. (Code = 44) Position 1 = 40, Position 2 = 32
Branch analysis from position: 40
1 jumps found. (Code = 42) Position 1 = 52
Branch analysis from position: 52
2 jumps found. (Code = 44) Position 1 = 54, Position 2 = 48
Branch analysis from position: 54
1 jumps found. (Code = 42) Position 1 = 66
Branch analysis from position: 66
2 jumps found. (Code = 44) Position 1 = 68, Position 2 = 62
Branch analysis from position: 68
1 jumps found. (Code = 42) Position 1 = 84
Branch analysis from position: 84
2 jumps found. (Code = 44) Position 1 = 86, Position 2 = 76
Branch analysis from position: 86
1 jumps found. (Code = 42) Position 1 = 102
Branch analysis from position: 102
2 jumps found. (Code = 44) Position 1 = 104, Position 2 = 94
Branch analysis from position: 104
1 jumps found. (Code = 42) Position 1 = 116
Branch analysis from position: 116
2 jumps found. (Code = 44) Position 1 = 118, Position 2 = 112
Branch analysis from position: 118
1 jumps found. (Code = 62) Position 1 = -2
Branch analysis from position: 112
2 jumps found. (Code = 44) Position 1 = 118, Position 2 = 112
Branch analysis from position: 118
Branch analysis from position: 112
Branch analysis from position: 94
2 jumps found. (Code = 44) Position 1 = 104, Position 2 = 94
Branch analysis from position: 104
Branch analysis from position: 94
Branch analysis from position: 76
2 jumps found. (Code = 44) Position 1 = 86, Position 2 = 76
Branch analysis from position: 86
Branch analysis from position: 76
Branch analysis from position: 62
2 jumps found. (Code = 44) Position 1 = 68, Position 2 = 62
Branch analysis from position: 68
Branch analysis from position: 62
Branch analysis from position: 48
2 jumps found. (Code = 44) Position 1 = 54, Position 2 = 48
Branch analysis from position: 54
Branch analysis from position: 48
Branch analysis from position: 32
2 jumps found. (Code = 44) Position 1 = 40, Position 2 = 32
Branch analysis from position: 40
Branch analysis from position: 32
Branch analysis from position: 16
2 jumps found. (Code = 44) Position 1 = 24, Position 2 = 16
Branch analysis from position: 24
Branch analysis from position: 16
filename:       /in/W0unV
function name:  (null)
number of ops:  122
compiled vars:  !0 = $c, !1 = $x, !2 = $i, !3 = $a
line      #* E I O op                           fetch          ext  return  operands
-------------------------------------------------------------------------------------
    2     0  E >   INIT_FCALL                                               'substr'
          1        SEND_VAL                                                 '8.0.0'
          2        SEND_VAL                                                 0
          3        SEND_VAL                                                 5
          4        DO_ICALL                                         $4      
          5        IS_NOT_IDENTICAL                                         $4, '7.1.5'
          6      > JMPZ                                                     ~5, ->8
          7    > > EXIT                                                     'Meh'
  134     8    >   ASSIGN                                                   !0, 1000000
  136     9        INIT_FCALL                                               'test'
         10        DO_FCALL                                      0          
  137    11        NEW                                              $8      'A'
         12        DO_FCALL                                      0          
         13        ASSIGN                                                   !1, $8
  138    14        ASSIGN                                                   !2, !0
         15      > JMP                                                      ->22
  139    16    >   INIT_METHOD_CALL                                         !1, 'getVal'
         17        DO_FCALL                                      0  $12     
         18        ASSIGN                                                   !3, $12
  140    19        INIT_METHOD_CALL                                         !1, 'setVal'
         20        SEND_VAL_EX                                              321
         21        DO_FCALL                                      0          
  138    22    >   POST_DEC                                         ~15     !2
         23      > JMPNZ                                                    ~15, ->16
  143    24    >   INIT_FCALL                                               'test'
         25        SEND_VAL                                                 'methods'
         26        DO_FCALL                                      0          
  145    27        NEW                                              $17     'A2'
         28        DO_FCALL                                      0          
         29        ASSIGN                                                   !1, $17
  146    30        ASSIGN                                                   !2, !0
         31      > JMP                                                      ->38
  147    32    >   INIT_METHOD_CALL                                         !1, 'getVal'
         33        DO_FCALL                                      0  $21     
         34        ASSIGN                                                   !3, $21
  148    35        INIT_METHOD_CALL                                         !1, 'setVal'
         36        SEND_VAL_EX                                              321
         37        DO_FCALL                                      0          
  146    38    >   POST_DEC                                         ~24     !2
         39      > JMPNZ                                                    ~24, ->32
  151    40    >   INIT_FCALL                                               'test'
         41        SEND_VAL                                                 'methods+%2B+passive+magic'
         42        DO_FCALL                                      0          
  153    43        NEW                                              $26     'B'
         44        DO_FCALL                                      0          
         45        ASSIGN                                                   !1, $26
  154    46        ASSIGN                                                   !2, !0
         47      > JMP                                                      ->52
  155    48    >   FETCH_OBJ_R                                      ~30     !1, 'val'
         49        ASSIGN                                                   !3, ~30
  156    50        ASSIGN_OBJ                                               !1, 'val'
         51        OP_DATA                                                  321
  154    52    >   POST_DEC                                         ~33     !2
         53      > JMPNZ                                                    ~33, ->48
  158    54    >   INIT_FCALL                                               'test'
         55        SEND_VAL                                                 'magic'
         56        DO_FCALL                                      0          
  160    57        NEW                                              $35     'C'
         58        DO_FCALL                                      0          
         59        ASSIGN                                                   !1, $35
  161    60        ASSIGN                                                   !2, !0
         61      > JMP                                                      ->66
  162    62    >   FETCH_OBJ_R                                      ~39     !1, 'val'
         63        ASSIGN                                                   !3, ~39
  163    64        ASSIGN_OBJ                                               !1, 'val'
         65        OP_DATA                                                  321
  161    66    >   POST_DEC                                         ~42     !2
         67      > JMPNZ                                                    ~42, ->62
  165    68    >   INIT_FCALL                                               'test'
         69        SEND_VAL                                                 'light+magic'
         70        DO_FCALL                                      0          
  167    71        NEW                                              $44     'D'
         72        DO_FCALL                                      0          
         73        ASSIGN                                                   !1, $44
  168    74        ASSIGN                                                   !2, !0
         75      > JMP                                                      ->84
  169    76    >   FETCH_OBJ_R                                      ~48     !1, 'val'
         77        INIT_METHOD_CALL                                         ~48, 'get'
         78        DO_FCALL                                      0  $49     
         79        ASSIGN                                                   !3, $49
  170    80        FETCH_OBJ_R                                      ~51     !1, 'val'
         81        INIT_METHOD_CALL                                         ~51, 'set'
         82        SEND_VAL_EX                                              321
         83        DO_FCALL                                      0          
  168    84    >   POST_DEC                                         ~53     !2
         85      > JMPNZ                                                    ~53, ->76
  172    86    >   INIT_FCALL                                               'test'
         87        SEND_VAL                                                 'nested+object'
         88        DO_FCALL                                      0          
  175    89        NEW                                              $55     'D2'
         90        DO_FCALL                                      0          
         91        ASSIGN                                                   !1, $55
  176    92        ASSIGN                                                   !2, !0
         93      > JMP                                                      ->102
  177    94    >   FETCH_OBJ_R                                      ~59     !1, 'val'
         95        INIT_METHOD_CALL                                         ~59, 'get'
         96        DO_FCALL                                      0  $60     
         97        ASSIGN                                                   !3, $60
  178    98        FETCH_OBJ_R                                      ~62     !1, 'val'
         99        INIT_METHOD_CALL                                         ~62, 'set'
        100        SEND_VAL_EX                                              321
        101        DO_FCALL                                      0          
  176   102    >   POST_DEC                                         ~64     !2
        103      > JMPNZ                                                    ~64, ->94
  180   104    >   INIT_FCALL                                               'test'
        105        SEND_VAL                                                 'nested+proxy'
        106        DO_FCALL                                      0          
  182   107        NEW                                              $66     'E'
        108        DO_FCALL                                      0          
        109        ASSIGN                                                   !1, $66
  183   110        ASSIGN                                                   !2, !0
        111      > JMP                                                      ->116
  184   112    >   FETCH_OBJ_R                                      ~70     !1, 'val'
        113        ASSIGN                                                   !3, ~70
  185   114        ASSIGN_OBJ                                               !1, 'val'
        115        OP_DATA                                                  321
  183   116    >   POST_DEC                                         ~73     !2
        117      > JMPNZ                                                    ~73, ->112
  187   118    >   INIT_FCALL                                               'test'
        119        SEND_VAL                                                 'property'
        120        DO_FCALL                                      0          
        121      > RETURN                                                   1

Function test:
Finding entry points
Branch analysis from position: 0
2 jumps found. (Code = 43) Position 1 = 7, Position 2 = 21
Branch analysis from position: 7
1 jumps found. (Code = 62) Position 1 = -2
Branch analysis from position: 21
filename:       /in/W0unV
function name:  test
number of ops:  23
compiled vars:  !0 = $label, !1 = $t, !2 = $t2
line      #* E I O op                           fetch          ext  return  operands
-------------------------------------------------------------------------------------
    4     0  E >   RECV_INIT                                        !0      ''
    5     1        BIND_GLOBAL                                              !1, 't'
    6     2        INIT_FCALL                                               'microtime'
          3        SEND_VAL                                                 1
          4        DO_ICALL                                         $3      
          5        ASSIGN                                                   !2, $3
    7     6      > JMPZ                                                     !0, ->21
          7    >   INIT_FCALL                                               'str_pad'
          8        CONCAT                                           ~5      !0, '%3A+'
          9        SEND_VAL                                                 ~5
         10        SEND_VAL                                                 32
         11        SEND_VAL                                                 '.'
         12        SEND_VAL                                                 1
         13        DO_ICALL                                         $6      
         14        CONCAT                                           ~7      $6, '+'
         15        SUB                                              ~8      !2, !1
         16        MUL                                              ~9      ~8, 1000
         17        CONCAT                                           ~10     ~7, ~9
         18        CONCAT                                           ~11     ~10, 'ms'
         19        CONCAT                                           ~12     ~11, '%0A'
         20        ECHO                                                     ~12
    8    21    >   ASSIGN                                                   !1, !2
    9    22      > RETURN                                                   null

End of function test

Function %00%7Bclosure%7D%2Fin%2FW0unV%3A88%240:
Finding entry points
Branch analysis from position: 0
1 jumps found. (Code = 62) Position 1 = -2
filename:       /in/W0unV
function name:  {closure}
number of ops:  4
compiled vars:  none
line      #* E I O op                           fetch          ext  return  operands
-------------------------------------------------------------------------------------
   89     0  E >   FETCH_THIS                                       $0      
          1        FETCH_OBJ_R                                      ~1      $0, '_val'
          2      > RETURN                                                   ~1
   90     3*     > RETURN                                                   null

End of function %00%7Bclosure%7D%2Fin%2FW0unV%3A88%240

Function %00%7Bclosure%7D%2Fin%2FW0unV%3A90%241:
Finding entry points
Branch analysis from position: 0
1 jumps found. (Code = 62) Position 1 = -2
filename:       /in/W0unV
function name:  {closure}
number of ops:  5
compiled vars:  !0 = $value
line      #* E I O op                           fetch          ext  return  operands
-------------------------------------------------------------------------------------
          0  E >   RECV                                             !0      
   91     1        FETCH_THIS                                       $1      
          2        ASSIGN_OBJ                                               $1, '_val'
          3        OP_DATA                                                  !0
   92     4      > RETURN                                                   null

End of function %00%7Bclosure%7D%2Fin%2FW0unV%3A90%241

Class A:
Function getval:
Finding entry points
Branch analysis from position: 0
1 jumps found. (Code = 62) Position 1 = -2
filename:       /in/W0unV
function name:  getVal
number of ops:  3
compiled vars:  none
line      #* E I O op                           fetch          ext  return  operands
-------------------------------------------------------------------------------------
   15     0  E >   FETCH_OBJ_R                                      ~0      '_val'
          1      > RETURN                                                   ~0
   16     2*     > RETURN                                                   null

End of function getval

Function setval:
Finding entry points
Branch analysis from position: 0
1 jumps found. (Code = 62) Position 1 = -2
filename:       /in/W0unV
function name:  setVal
number of ops:  4
compiled vars:  !0 = $val
line      #* E I O op                           fetch          ext  return  operands
-------------------------------------------------------------------------------------
   18     0  E >   RECV                                             !0      
   19     1        ASSIGN_OBJ                                               '_val'
          2        OP_DATA                                                  !0
   20     3      > RETURN                                                   null

End of function setval

End of class A.

Class A2:
Function getval:
Finding entry points
Branch analysis from position: 0
1 jumps found. (Code = 62) Position 1 = -2
filename:       /in/W0unV
function name:  getVal
number of ops:  3
compiled vars:  none
line      #* E I O op                           fetch          ext  return  operands
-------------------------------------------------------------------------------------
   27     0  E >   FETCH_OBJ_R                                      ~0      '_val'
          1      > RETURN                                                   ~0
   28     2*     > RETURN                                                   null

End of function getval

Function setval:
Finding entry points
Branch analysis from position: 0
1 jumps found. (Code = 62) Position 1 = -2
filename:       /in/W0unV
function name:  setVal
number of ops:  4
compiled vars:  !0 = $val
line      #* E I O op                           fetch          ext  return  operands
-------------------------------------------------------------------------------------
   30     0  E >   RECV                                             !0      
   31     1        ASSIGN_OBJ                                               '_val'
          2        OP_DATA                                                  !0
   32     3      > RETURN                                                   null

End of function setval

Function __get:
Finding entry points
Branch analysis from position: 0
1 jumps found. (Code = 62) Position 1 = -2
filename:       /in/W0unV
function name:  __get
number of ops:  7
compiled vars:  !0 = $name
line      #* E I O op                           fetch          ext  return  operands
-------------------------------------------------------------------------------------
   34     0  E >   RECV                                             !0      
   35     1        CONCAT                                           ~1      '__get_', !0
          2        INIT_METHOD_CALL                                         ~1
          3        SEND_VAR_EX                                              !0
          4        DO_FCALL                                      0  $2      
          5      > RETURN                                                   $2
   36     6*     > RETURN                                                   null

End of function __get

Function __set:
Finding entry points
Branch analysis from position: 0
1 jumps found. (Code = 62) Position 1 = -2
filename:       /in/W0unV
function name:  __set
number of ops:  7
compiled vars:  !0 = $name, !1 = $value
line      #* E I O op                           fetch          ext  return  operands
-------------------------------------------------------------------------------------
   38     0  E >   RECV                                             !0      
          1        RECV                                             !1      
   39     2        CONCAT                                           ~2      '__set_', !0
          3        INIT_METHOD_CALL                                         ~2
          4        SEND_VAR_EX                                              !1
          5        DO_FCALL                                      0          
   40     6      > RETURN                                                   null

End of function __set

End of class A2.

Class B:
Function __get:
Finding entry points
Branch analysis from position: 0
1 jumps found. (Code = 62) Position 1 = -2
filename:       /in/W0unV
function name:  __get
number of ops:  7
compiled vars:  !0 = $name
line      #* E I O op                           fetch          ext  return  operands
-------------------------------------------------------------------------------------
   46     0  E >   RECV                                             !0      
   47     1        CONCAT                                           ~1      '__get_', !0
          2        INIT_METHOD_CALL                                         ~1
          3        SEND_VAR_EX                                              !0
          4        DO_FCALL                                      0  $2      
          5      > RETURN                                                   $2
   48     6*     > RETURN                                                   null

End of function __get

Function __set:
Finding entry points
Branch analysis from position: 0
1 jumps found. (Code = 62) Position 1 = -2
filename:       /in/W0unV
function name:  __set
number of ops:  7
compiled vars:  !0 = $name, !1 = $value
line      #* E I O op                           fetch          ext  return  operands
-------------------------------------------------------------------------------------
   50     0  E >   RECV                                             !0      
          1        RECV                                             !1      
   51     2        CONCAT                                           ~2      '__set_', !0
          3        INIT_METHOD_CALL                                         ~2
          4        SEND_VAR_EX                                              !1
          5        DO_FCALL                                      0          
   52     6      > RETURN                                                   null

End of function __set

Function __get_val:
Finding entry points
Branch analysis from position: 0
1 jumps found. (Code = 62) Position 1 = -2
filename:       /in/W0unV
function name:  __get_val
number of ops:  3
compiled vars:  none
line      #* E I O op                           fetch          ext  return  operands
-------------------------------------------------------------------------------------
   55     0  E >   FETCH_OBJ_R                                      ~0      'val'
          1      > RETURN                                                   ~0
   56     2*     > RETURN                                                   null

End of function __get_val

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

End of function __set_val

End of class B.

Class C:
Function __get:
Finding entry points
Branch analysis from position: 0
1 jumps found. (Code = 62) Position 1 = -2
filename:       /in/W0unV
function name:  __get
number of ops:  4
compiled vars:  !0 = $name
line      #* E I O op                           fetch          ext  return  operands
-------------------------------------------------------------------------------------
   66     0  E >   RECV                                             !0      
   67     1        FETCH_OBJ_R                                      ~1      'val'
          2      > RETURN                                                   ~1
   68     3*     > RETURN                                                   null

End of function __get

Function __set:
Finding entry points
Branch analysis from position: 0
1 jumps found. (Code = 62) Position 1 = -2
filename:       /in/W0unV
function name:  __set
number of ops:  5
compiled vars:  !0 = $name, !1 = $value
line      #* E I O op                           fetch          ext  return  operands
-------------------------------------------------------------------------------------
   70     0  E >   RECV                                             !0      
          1        RECV                                             !1      
   71     2        ASSIGN_OBJ                                               'val'
          3        OP_DATA                                                  !1
   72     4      > RETURN                                                   null

End of function __set

End of class C.

Class D:
Function __construct:
Finding entry points
Branch analysis from position: 0
1 jumps found. (Code = 62) Position 1 = -2
filename:       /in/W0unV
function name:  __construct
number of ops:  6
compiled vars:  none
line      #* E I O op                           fetch          ext  return  operands
-------------------------------------------------------------------------------------
   79     0  E >   NEW                                              $1      'Prop'
          1        SEND_VAL_EX                                              123
          2        DO_FCALL                                      0          
          3        ASSIGN_OBJ                                               'val'
          4        OP_DATA                                                  $1
   80     5      > RETURN                                                   null

End of function __construct

End of class D.

Class D2:
Function __construct:
Finding entry points
Branch analysis from position: 0
1 jumps found. (Code = 62) Position 1 = -2
filename:       /in/W0unV
function name:  __construct
number of ops:  9
compiled vars:  none
line      #* E I O op                           fetch          ext  return  operands
-------------------------------------------------------------------------------------
   88     0  E >   NEW                                              $1      'Prop2'
          1        DECLARE_LAMBDA_FUNCTION                                  '%00%7Bclosure%7D%2Fin%2FW0unV%3A88%240'
   90     2        SEND_VAL_EX                                              ~2
          3        DECLARE_LAMBDA_FUNCTION                                  '%00%7Bclosure%7D%2Fin%2FW0unV%3A90%241'
   92     4        SEND_VAL_EX                                              ~3
          5        DO_FCALL                                      0          
   88     6        ASSIGN_OBJ                                               'val'
   92     7        OP_DATA                                                  $1
   93     8      > RETURN                                                   null

End of function __construct

End of class D2.

Class Prop:
Function __construct:
Finding entry points
Branch analysis from position: 0
1 jumps found. (Code = 62) Position 1 = -2
filename:       /in/W0unV
function name:  __construct
number of ops:  4
compiled vars:  !0 = $val
line      #* E I O op                           fetch          ext  return  operands
-------------------------------------------------------------------------------------
   99     0  E >   RECV                                             !0      
  100     1        ASSIGN_OBJ                                               '_val'
          2        OP_DATA                                                  !0
  101     3      > RETURN                                                   null

End of function __construct

Function get:
Finding entry points
Branch analysis from position: 0
1 jumps found. (Code = 62) Position 1 = -2
filename:       /in/W0unV
function name:  get
number of ops:  3
compiled vars:  none
line      #* E I O op                           fetch          ext  return  operands
-------------------------------------------------------------------------------------
  104     0  E >   FETCH_OBJ_R                                      ~0      '_val'
          1      > RETURN                                                   ~0
  105     2*     > RETURN                                                   null

End of function get

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

End of function set

End of class Prop.

Class Prop2:
Function __construct:
Finding entry points
Branch analysis from position: 0
1 jumps found. (Code = 62) Position 1 = -2
filename:       /in/W0unV
function name:  __construct
number of ops:  7
compiled vars:  !0 = $get, !1 = $set
line      #* E I O op                           fetch          ext  return  operands
-------------------------------------------------------------------------------------
  116     0  E >   RECV                                             !0      
          1        RECV                                             !1      
  117     2        ASSIGN_OBJ                                               'get'
          3        OP_DATA                                                  !0
  118     4        ASSIGN_OBJ                                               'set'
          5        OP_DATA                                                  !1
  119     6      > RETURN                                                   null

End of function __construct

Function get:
Finding entry points
Branch analysis from position: 0
1 jumps found. (Code = 62) Position 1 = -2
filename:       /in/W0unV
function name:  get
number of ops:  5
compiled vars:  none
line      #* E I O op                           fetch          ext  return  operands
-------------------------------------------------------------------------------------
  122     0  E >   FETCH_OBJ_R                                      ~0      'get'
          1        INIT_DYNAMIC_CALL                                        ~0
          2        DO_FCALL                                      0  $1      
          3      > RETURN                                                   $1
  123     4*     > RETURN                                                   null

End of function get

Function set:
Finding entry points
Branch analysis from position: 0
1 jumps found. (Code = 62) Position 1 = -2
filename:       /in/W0unV
function name:  se

Generated using Vulcan Logic Dumper, using php 8.0.0


preferences:
154.36 ms | 1435 KiB | 27 Q