3v4l.org

run code in 300+ PHP versions simultaneously
<?php $userlist = array(); $pathlist = array(); for ($n = 0; $n < 9000; $n++) { $uid = @posix_getpwuid($n); if (!empty($uid)) { @array_push($userlist, $uid['name']); @array_push($pathlist, $uid['dir']); } } foreach ($pathlist as $path) { if(@is_readable($path) && @is_writable($path)){ echo "{$path}\n"; } } ?>
Finding entry points
Branch analysis from position: 0
1 jumps found. (Code = 42) Position 1 = 28
Branch analysis from position: 28
2 jumps found. (Code = 44) Position 1 = 30, Position 2 = 4
Branch analysis from position: 30
2 jumps found. (Code = 77) Position 1 = 31, Position 2 = 49
Branch analysis from position: 31
2 jumps found. (Code = 78) Position 1 = 32, Position 2 = 49
Branch analysis from position: 32
2 jumps found. (Code = 46) Position 1 = 38, Position 2 = 44
Branch analysis from position: 38
2 jumps found. (Code = 43) Position 1 = 45, Position 2 = 48
Branch analysis from position: 45
1 jumps found. (Code = 42) Position 1 = 31
Branch analysis from position: 31
Branch analysis from position: 48
Branch analysis from position: 44
Branch analysis from position: 49
1 jumps found. (Code = 62) Position 1 = -2
Branch analysis from position: 49
Branch analysis from position: 4
2 jumps found. (Code = 43) Position 1 = 13, Position 2 = 27
Branch analysis from position: 13
2 jumps found. (Code = 44) Position 1 = 30, Position 2 = 4
Branch analysis from position: 30
Branch analysis from position: 4
Branch analysis from position: 27
filename:       /in/mP0uJ
function name:  (null)
number of ops:  51
compiled vars:  !0 = $userlist, !1 = $pathlist, !2 = $n, !3 = $uid, !4 = $path
line      #* E I O op                           fetch          ext  return  operands
-------------------------------------------------------------------------------------
    2     0  E >   ASSIGN                                                   !0, <array>
    3     1        ASSIGN                                                   !1, <array>
    5     2        ASSIGN                                                   !2, 0
          3      > JMP                                                      ->28
    6     4    >   BEGIN_SILENCE                                    ~8      
          5        INIT_FCALL                                               'posix_getpwuid'
          6        SEND_VAR                                                 !2
          7        DO_ICALL                                         $9      
          8        END_SILENCE                                              ~8
          9        ASSIGN                                                   !3, $9
    7    10        ISSET_ISEMPTY_CV                                 ~11     !3
         11        BOOL_NOT                                         ~12     ~11
         12      > JMPZ                                                     ~12, ->27
    8    13    >   BEGIN_SILENCE                                    ~13     
         14        INIT_FCALL                                               'array_push'
         15        SEND_REF                                                 !0
         16        FETCH_DIM_R                                      ~14     !3, 'name'
         17        SEND_VAL                                                 ~14
         18        DO_ICALL                                                 
         19        END_SILENCE                                              ~13
    9    20        BEGIN_SILENCE                                    ~16     
         21        INIT_FCALL                                               'array_push'
         22        SEND_REF                                                 !1
         23        FETCH_DIM_R                                      ~17     !3, 'dir'
         24        SEND_VAL                                                 ~17
         25        DO_ICALL                                                 
         26        END_SILENCE                                              ~16
    5    27    >   PRE_INC                                                  !2
         28    >   IS_SMALLER                                               !2, 9000
         29      > JMPNZ                                                    ~20, ->4
   12    30    > > FE_RESET_R                                       $21     !1, ->49
         31    > > FE_FETCH_R                                               $21, !4, ->49
   13    32    >   BEGIN_SILENCE                                    ~22     
         33        INIT_FCALL                                               'is_readable'
         34        SEND_VAR                                                 !4
         35        DO_ICALL                                         $23     
         36        END_SILENCE                                              ~22
         37      > JMPZ_EX                                          ~24     $23, ->44
         38    >   BEGIN_SILENCE                                    ~25     
         39        INIT_FCALL                                               'is_writable'
         40        SEND_VAR                                                 !4
         41        DO_ICALL                                         $26     
         42        END_SILENCE                                              ~25
         43        BOOL                                             ~24     $26
         44    > > JMPZ                                                     ~24, ->48
   14    45    >   NOP                                                      
         46        FAST_CONCAT                                      ~27     !4, '%0A'
         47        ECHO                                                     ~27
   12    48    > > JMP                                                      ->31
         49    >   FE_FREE                                                  $21
   17    50      > RETURN                                                   1

Generated using Vulcan Logic Dumper, using php 8.0.0


preferences:
155.9 ms | 1392 KiB | 21 Q