3v4l.org

run code in 300+ PHP versions simultaneously
<?php $path = "/home/sjon/phpshell/root/php-5.5.0/lib/php/extensions/no-debug-non-zts-20121212/vld.so"; //$dir = dir($path); try { $file = new \SplFileObject($path, 'r'); } catch (Exception $e) { echo $e->getMessage(); exit; } var_dump($file->isFile()); exit;; while (($entry = $dir->read()) !== false) { var_dump($entry); try { $file = new \SplFileObject($path. $entry, 'r'); } catch (Exception $e) { continue; } var_dump($file->isFile()); }
Finding entry points
Branch analysis from position: 0
1 jumps found. (Code = 42) Position 1 = 12
Branch analysis from position: 12
1 jumps found. (Code = 79) Position 1 = -2
Found catch point at position: 7
Branch analysis from position: 7
2 jumps found. (Code = 107) Position 1 = 8, Position 2 = -2
Branch analysis from position: 8
1 jumps found. (Code = 79) Position 1 = -2
Found catch point at position: 29
Branch analysis from position: 29
2 jumps found. (Code = 107) Position 1 = 30, Position 2 = -2
Branch analysis from position: 30
1 jumps found. (Code = 42) Position 1 = 36
Branch analysis from position: 36
2 jumps found. (Code = 44) Position 1 = 41, Position 2 = 19
Branch analysis from position: 41
1 jumps found. (Code = 62) Position 1 = -2
Branch analysis from position: 19
1 jumps found. (Code = 42) Position 1 = 31
Branch analysis from position: 31
2 jumps found. (Code = 44) Position 1 = 41, Position 2 = 19
Branch analysis from position: 41
Branch analysis from position: 19
filename:       /in/4Z6Qr
function name:  (null)
number of ops:  42
compiled vars:  !0 = $path, !1 = $file, !2 = $e, !3 = $entry, !4 = $dir
line      #* E I O op                           fetch          ext  return  operands
-------------------------------------------------------------------------------------
    2     0  E >   ASSIGN                                                   !0, '%2Fhome%2Fsjon%2Fphpshell%2Froot%2Fphp-5.5.0%2Flib%2Fphp%2Fextensions%2Fno-debug-non-zts-20121212%2Fvld.so'
    6     1        NEW                                              $6      'SplFileObject'
          2        SEND_VAR_EX                                              !0
          3        SEND_VAL_EX                                              'r'
          4        DO_FCALL                                      0          
          5        ASSIGN                                                   !1, $6
          6      > JMP                                                      ->12
    7     7  E > > CATCH                                       last         'Exception'
    8     8    >   INIT_METHOD_CALL                                         !2, 'getMessage'
          9        DO_FCALL                                      0  $9      
         10        ECHO                                                     $9
    9    11      > EXIT                                                     
   11    12    >   INIT_FCALL                                               'var_dump'
         13        INIT_METHOD_CALL                                         !1, 'isFile'
         14        DO_FCALL                                      0  $10     
         15        SEND_VAR                                                 $10
         16        DO_ICALL                                                 
   12    17      > EXIT                                                     
   13    18*       JMP                                                      ->36
   14    19    >   INIT_FCALL                                               'var_dump'
         20        SEND_VAR                                                 !3
         21        DO_ICALL                                                 
   16    22        NEW                                              $13     'SplFileObject'
         23        CONCAT                                           ~14     !0, !3
         24        SEND_VAL_EX                                              ~14
         25        SEND_VAL_EX                                              'r'
         26        DO_FCALL                                      0          
         27        ASSIGN                                                   !1, $13
         28      > JMP                                                      ->31
   17    29  E > > CATCH                                       last         'Exception'
   18    30    > > JMP                                                      ->36
   20    31    >   INIT_FCALL                                               'var_dump'
         32        INIT_METHOD_CALL                                         !1, 'isFile'
         33        DO_FCALL                                      0  $17     
         34        SEND_VAR                                                 $17
         35        DO_ICALL                                                 
   13    36    >   INIT_METHOD_CALL                                         !4, 'read'
         37        DO_FCALL                                      0  $19     
         38        ASSIGN                                           ~20     !3, $19
         39        TYPE_CHECK                                  1018          ~20
         40      > JMPNZ                                                    ~21, ->19
   21    41    > > RETURN                                                   1

Generated using Vulcan Logic Dumper, using php 8.0.0


preferences:
169.21 ms | 1400 KiB | 15 Q