3v4l.org

run code in 300+ PHP versions simultaneously
<?php class A { private $a; protected $b; public $c; private $d; protected $e; public $f; } class B extends A { private $a; protected $b; public $c; } $a = new \ReflectionProperty('\B', 'a'); $b = new \ReflectionProperty('\B', 'b'); $c = new \ReflectionProperty('\B', 'c'); $d = new \ReflectionProperty('\B', 'd'); $e = new \ReflectionProperty('\B', 'e'); $f = new \ReflectionProperty('\B', 'f'); var_dump($a->class); var_dump($a->getDeclaringClass()->getName()); var_dump($b->class); var_dump($b->getDeclaringClass()->getName()); var_dump($c->class); var_dump($c->getDeclaringClass()->getName()); var_dump($d->class); var_dump($d->getDeclaringClass()->getName()); var_dump($e->class); var_dump($e->getDeclaringClass()->getName()); var_dump($f->class); var_dump($f->getDeclaringClass()->getName());
Finding entry points
Branch analysis from position: 0
1 jumps found. (Code = 62) Position 1 = -2
filename:       /in/8PnT6
function name:  (null)
number of ops:  97
compiled vars:  !0 = $a, !1 = $b, !2 = $c, !3 = $d, !4 = $e, !5 = $f
line      #* E I O op                           fetch          ext  return  operands
-------------------------------------------------------------------------------------
   27     0  E >   NEW                                              $6      'ReflectionProperty'
          1        SEND_VAL_EX                                              '%5CB'
          2        SEND_VAL_EX                                              'a'
          3        DO_FCALL                                      0          
          4        ASSIGN                                                   !0, $6
   28     5        NEW                                              $9      'ReflectionProperty'
          6        SEND_VAL_EX                                              '%5CB'
          7        SEND_VAL_EX                                              'b'
          8        DO_FCALL                                      0          
          9        ASSIGN                                                   !1, $9
   29    10        NEW                                              $12     'ReflectionProperty'
         11        SEND_VAL_EX                                              '%5CB'
         12        SEND_VAL_EX                                              'c'
         13        DO_FCALL                                      0          
         14        ASSIGN                                                   !2, $12
   30    15        NEW                                              $15     'ReflectionProperty'
         16        SEND_VAL_EX                                              '%5CB'
         17        SEND_VAL_EX                                              'd'
         18        DO_FCALL                                      0          
         19        ASSIGN                                                   !3, $15
   31    20        NEW                                              $18     'ReflectionProperty'
         21        SEND_VAL_EX                                              '%5CB'
         22        SEND_VAL_EX                                              'e'
         23        DO_FCALL                                      0          
         24        ASSIGN                                                   !4, $18
   32    25        NEW                                              $21     'ReflectionProperty'
         26        SEND_VAL_EX                                              '%5CB'
         27        SEND_VAL_EX                                              'f'
         28        DO_FCALL                                      0          
         29        ASSIGN                                                   !5, $21
   34    30        INIT_FCALL                                               'var_dump'
         31        FETCH_OBJ_R                                      ~24     !0, 'class'
         32        SEND_VAL                                                 ~24
         33        DO_ICALL                                                 
   35    34        INIT_FCALL                                               'var_dump'
         35        INIT_METHOD_CALL                                         !0, 'getDeclaringClass'
         36        DO_FCALL                                      0  $26     
         37        INIT_METHOD_CALL                                         $26, 'getName'
         38        DO_FCALL                                      0  $27     
         39        SEND_VAR                                                 $27
         40        DO_ICALL                                                 
   36    41        INIT_FCALL                                               'var_dump'
         42        FETCH_OBJ_R                                      ~29     !1, 'class'
         43        SEND_VAL                                                 ~29
         44        DO_ICALL                                                 
   37    45        INIT_FCALL                                               'var_dump'
         46        INIT_METHOD_CALL                                         !1, 'getDeclaringClass'
         47        DO_FCALL                                      0  $31     
         48        INIT_METHOD_CALL                                         $31, 'getName'
         49        DO_FCALL                                      0  $32     
         50        SEND_VAR                                                 $32
         51        DO_ICALL                                                 
   38    52        INIT_FCALL                                               'var_dump'
         53        FETCH_OBJ_R                                      ~34     !2, 'class'
         54        SEND_VAL                                                 ~34
         55        DO_ICALL                                                 
   39    56        INIT_FCALL                                               'var_dump'
         57        INIT_METHOD_CALL                                         !2, 'getDeclaringClass'
         58        DO_FCALL                                      0  $36     
         59        INIT_METHOD_CALL                                         $36, 'getName'
         60        DO_FCALL                                      0  $37     
         61        SEND_VAR                                                 $37
         62        DO_ICALL                                                 
   41    63        INIT_FCALL                                               'var_dump'
         64        FETCH_OBJ_R                                      ~39     !3, 'class'
         65        SEND_VAL                                                 ~39
         66        DO_ICALL                                                 
   42    67        INIT_FCALL                                               'var_dump'
         68        INIT_METHOD_CALL                                         !3, 'getDeclaringClass'
         69        DO_FCALL                                      0  $41     
         70        INIT_METHOD_CALL                                         $41, 'getName'
         71        DO_FCALL                                      0  $42     
         72        SEND_VAR                                                 $42
         73        DO_ICALL                                                 
   43    74        INIT_FCALL                                               'var_dump'
         75        FETCH_OBJ_R                                      ~44     !4, 'class'
         76        SEND_VAL                                                 ~44
         77        DO_ICALL                                                 
   44    78        INIT_FCALL                                               'var_dump'
         79        INIT_METHOD_CALL                                         !4, 'getDeclaringClass'
         80        DO_FCALL                                      0  $46     
         81        INIT_METHOD_CALL                                         $46, 'getName'
         82        DO_FCALL                                      0  $47     
         83        SEND_VAR                                                 $47
         84        DO_ICALL                                                 
   45    85        INIT_FCALL                                               'var_dump'
         86        FETCH_OBJ_R                                      ~49     !5, 'class'
         87        SEND_VAL                                                 ~49
         88        DO_ICALL                                                 
   46    89        INIT_FCALL                                               'var_dump'
         90        INIT_METHOD_CALL                                         !5, 'getDeclaringClass'
         91        DO_FCALL                                      0  $51     
         92        INIT_METHOD_CALL                                         $51, 'getName'
         93        DO_FCALL                                      0  $52     
         94        SEND_VAR                                                 $52
         95        DO_ICALL                                                 
         96      > RETURN                                                   1

Class A: [no user functions]
Class B: [no user functions]

Generated using Vulcan Logic Dumper, using php 8.0.0


preferences:
150.71 ms | 1409 KiB | 15 Q