3v4l.org

run code in 300+ PHP versions simultaneously
<?php $dir = '/proc/4/'; if ($dh = opendir($dir)) { while (($file = readdir($dh)) !== false) { echo "filename: $file : filetype: " . filetype($dir . $file) . "\n"; } closedir($dh); } readfile('/proc/5/cmdline');
Finding entry points
Branch analysis from position: 0
2 jumps found. (Code = 43) Position 1 = 6, Position 2 = 26
Branch analysis from position: 6
1 jumps found. (Code = 42) Position 1 = 17
Branch analysis from position: 17
2 jumps found. (Code = 44) Position 1 = 23, Position 2 = 7
Branch analysis from position: 23
1 jumps found. (Code = 62) Position 1 = -2
Branch analysis from position: 7
2 jumps found. (Code = 44) Position 1 = 23, Position 2 = 7
Branch analysis from position: 23
Branch analysis from position: 7
Branch analysis from position: 26
filename:       /in/6ZRoI
function name:  (null)
number of ops:  30
compiled vars:  !0 = $dir, !1 = $dh, !2 = $file
line      #* E I O op                           fetch          ext  return  operands
-------------------------------------------------------------------------------------
    2     0  E >   ASSIGN                                                   !0, '%2Fproc%2F4%2F'
    3     1        INIT_FCALL                                               'opendir'
          2        SEND_VAR                                                 !0
          3        DO_ICALL                                         $4      
          4        ASSIGN                                           ~5      !1, $4
          5      > JMPZ                                                     ~5, ->26
    4     6    > > JMP                                                      ->17
    5     7    >   ROPE_INIT                                     3  ~7      'filename%3A+'
          8        ROPE_ADD                                      1  ~7      ~7, !2
          9        ROPE_END                                      2  ~6      ~7, '+%3A+filetype%3A+'
         10        INIT_FCALL                                               'filetype'
         11        CONCAT                                           ~9      !0, !2
         12        SEND_VAL                                                 ~9
         13        DO_ICALL                                         $10     
         14        CONCAT                                           ~11     ~6, $10
         15        CONCAT                                           ~12     ~11, '%0A'
         16        ECHO                                                     ~12
    4    17    >   INIT_FCALL                                               'readdir'
         18        SEND_VAR                                                 !1
         19        DO_ICALL                                         $13     
         20        ASSIGN                                           ~14     !2, $13
         21        TYPE_CHECK                                  1018          ~14
         22      > JMPNZ                                                    ~15, ->7
    7    23    >   INIT_FCALL                                               'closedir'
         24        SEND_VAR                                                 !1
         25        DO_ICALL                                                 
    9    26    >   INIT_FCALL                                               'readfile'
         27        SEND_VAL                                                 '%2Fproc%2F5%2Fcmdline'
         28        DO_ICALL                                                 
         29      > RETURN                                                   1

Generated using Vulcan Logic Dumper, using php 8.0.0


preferences:
162.21 ms | 1388 KiB | 23 Q