3v4l.org

run code in 500+ PHP versions simultaneously
<?php class Foo { private $bar = 'baz'; private $xyz = 'www'; } $f = new Foo(); var_dump(key($f), bin2hex(key($f))); var_dump(current($f)); var_dump(next($f)); var_dump(key($f), bin2hex(key($f))); var_dump(current($f),"---"); class Foo1 { protected $bar = 'baz'; protected $xyz = 'www'; } $f = new Foo1(); var_dump(key($f), bin2hex(key($f))); var_dump(current($f)); var_dump(next($f)); var_dump(key($f), bin2hex(key($f))); var_dump(current($f),"---"); class Foo2 { public $bar = 'baz'; public $xyz = 'www'; } $f = new Foo2(); var_dump(key($f), bin2hex(key($f))); var_dump(current($f)); var_dump(next($f)); var_dump(key($f), bin2hex(key($f))); var_dump(current($f),"---");
Finding entry points
Branch analysis from position: 0
1 jumps found. (Code = 62) Position 1 = -2
filename:       /in/IZgIp
function name:  (null)
number of ops:  145
compiled vars:  !0 = $f
line      #* E I O op                               fetch          ext  return  operands
-----------------------------------------------------------------------------------------
    9     0  E >   NEW                                                  $1      'Foo'
          1        DO_FCALL                                          0          
          2        ASSIGN                                                       !0, $1
   10     3        INIT_FCALL                                                   'var_dump'
          4        INIT_FCALL                                                   'key'
          5        SEND_VAR                                                     !0
          6        DO_ICALL                                             $4      
          7        SEND_VAR                                                     $4
          8        INIT_FCALL                                                   'bin2hex'
          9        INIT_FCALL                                                   'key'
         10        SEND_VAR                                                     !0
         11        DO_ICALL                                             $5      
         12        SEND_VAR                                                     $5
         13        DO_ICALL                                             $6      
         14        SEND_VAR                                                     $6
         15        DO_ICALL                                                     
   11    16        INIT_FCALL                                                   'var_dump'
         17        INIT_FCALL                                                   'current'
         18        SEND_VAR                                                     !0
         19        DO_ICALL                                             $8      
         20        SEND_VAR                                                     $8
         21        DO_ICALL                                                     
   12    22        INIT_FCALL                                                   'var_dump'
         23        INIT_FCALL                                                   'next'
         24        SEND_REF                                                     !0
         25        DO_ICALL                                             $10     
         26        SEND_VAR                                                     $10
         27        DO_ICALL                                                     
   13    28        INIT_FCALL                                                   'var_dump'
         29        INIT_FCALL                                                   'key'
         30        SEND_VAR                                                     !0
         31        DO_ICALL                                             $12     
         32        SEND_VAR                                                     $12
         33        INIT_FCALL                                                   'bin2hex'
         34        INIT_FCALL                                                   'key'
         35        SEND_VAR                                                     !0
         36        DO_ICALL                                             $13     
         37        SEND_VAR                                                     $13
         38        DO_ICALL                                             $14     
         39        SEND_VAR                                                     $14
         40        DO_ICALL                                                     
   14    41        INIT_FCALL                                                   'var_dump'
         42        INIT_FCALL                                                   'current'
         43        SEND_VAR                                                     !0
         44        DO_ICALL                                             $16     
         45        SEND_VAR                                                     $16
         46        SEND_VAL                                                     '---'
         47        DO_ICALL                                                     
   22    48        NEW                                                  $18     'Foo1'
         49        DO_FCALL                                          0          
         50        ASSIGN                                                       !0, $18
   23    51        INIT_FCALL                                                   'var_dump'
         52        INIT_FCALL                                                   'key'
         53        SEND_VAR                                                     !0
         54        DO_ICALL                                             $21     
         55        SEND_VAR                                                     $21
         56        INIT_FCALL                                                   'bin2hex'
         57        INIT_FCALL                                                   'key'
         58        SEND_VAR                                                     !0
         59        DO_ICALL                                             $22     
         60        SEND_VAR                                                     $22
         61        DO_ICALL                                             $23     
         62        SEND_VAR                                                     $23
         63        DO_ICALL                                                     
   24    64        INIT_FCALL                                                   'var_dump'
         65        INIT_FCALL                                                   'current'
         66        SEND_VAR                                                     !0
         67        DO_ICALL                                             $25     
         68        SEND_VAR                                                     $25
         69        DO_ICALL                                                     
   25    70        INIT_FCALL                                                   'var_dump'
         71        INIT_FCALL                                                   'next'
         72        SEND_REF                                                     !0
         73        DO_ICALL                                             $27     
         74        SEND_VAR                                                     $27
         75        DO_ICALL                                                     
   26    76        INIT_FCALL                                                   'var_dump'
         77        INIT_FCALL                                                   'key'
         78        SEND_VAR                                                     !0
         79        DO_ICALL                                             $29     
         80        SEND_VAR                                                     $29
         81        INIT_FCALL                                                   'bin2hex'
         82        INIT_FCALL                                                   'key'
         83        SEND_VAR                                                     !0
         84        DO_ICALL                                             $30     
         85        SEND_VAR                                                     $30
         86        DO_ICALL                                             $31     
         87        SEND_VAR                                                     $31
         88        DO_ICALL                                                     
   27    89        INIT_FCALL                                                   'var_dump'
         90        INIT_FCALL                                                   'current'
         91        SEND_VAR                                                     !0
         92        DO_ICALL                                             $33     
         93        SEND_VAR                                                     $33
         94        SEND_VAL                                                     '---'
         95        DO_ICALL                                                     
   35    96        NEW                                                  $35     'Foo2'
         97        DO_FCALL                                          0          
         98        ASSIGN                                                       !0, $35
   36    99        INIT_FCALL                                                   'var_dump'
        100        INIT_FCALL                                                   'key'
        101        SEND_VAR                                                     !0
        102        DO_ICALL                                             $38     
        103        SEND_VAR                                                     $38
        104        INIT_FCALL                                                   'bin2hex'
        105        INIT_FCALL                                                   'key'
        106        SEND_VAR                                                     !0
        107        DO_ICALL                                             $39     
        108        SEND_VAR                                                     $39
        109        DO_ICALL                                             $40     
        110        SEND_VAR                                                     $40
        111        DO_ICALL                                                     
   37   112        INIT_FCALL                                                   'var_dump'
        113        INIT_FCALL                                                   'current'
        114        SEND_VAR                                                     !0
        115        DO_ICALL                                             $42     
        116        SEND_VAR                                                     $42
        117        DO_ICALL                                                     
   38   118        INIT_FCALL                                                   'var_dump'
        119        INIT_FCALL                                                   'next'
        120        SEND_REF                                                     !0
        121        DO_ICALL                                             $44     
        122        SEND_VAR                                                     $44
        123        DO_ICALL                                                     
   39   124        INIT_FCALL                                                   'var_dump'
        125        INIT_FCALL                                                   'key'
        126        SEND_VAR                                                     !0
        127        DO_ICALL                                             $46     
        128        SEND_VAR                                                     $46
        129        INIT_FCALL                                                   'bin2hex'
        130        INIT_FCALL                                                   'key'
        131        SEND_VAR                                                     !0
        132        DO_ICALL                                             $47     
        133        SEND_VAR                                                     $47
        134        DO_ICALL                                             $48     
        135        SEND_VAR                                                     $48
        136        DO_ICALL                                                     
   40   137        INIT_FCALL                                                   'var_dump'
        138        INIT_FCALL                                                   'current'
        139        SEND_VAR                                                     !0
        140        DO_ICALL                                             $50     
        141        SEND_VAR                                                     $50
        142        SEND_VAL                                                     '---'
        143        DO_ICALL                                                     
        144      > RETURN                                                       1

Class Foo: [no user functions]
Class Foo1: [no user functions]
Class Foo2: [no user functions]

Generated using Vulcan Logic Dumper, using php 8.5.0


preferences:
230.32 ms | 2447 KiB | 18 Q