3v4l.org

run code in 300+ PHP versions simultaneously
<?php $a = "xxoo;rm -rf /"; $arg = escapeshellarg("/data/files/{$a}"); print(escapeshellcmd("rm {$arg}"));
Finding entry points
Branch analysis from position: 0
1 jumps found. (Code = 62) Position 1 = -2
filename:       /in/PYo9P
function name:  (null)
number of ops:  14
compiled vars:  !0 = $a, !1 = $arg
line      #* E I O op                           fetch          ext  return  operands
-------------------------------------------------------------------------------------
    4     0  E >   ASSIGN                                                   !0, 'xxoo%3Brm+-rf+%2F'
    5     1        INIT_FCALL                                               'escapeshellarg'
          2        NOP                                                      
          3        FAST_CONCAT                                      ~3      '%2Fdata%2Ffiles%2F', !0
          4        SEND_VAL                                                 ~3
          5        DO_ICALL                                         $4      
          6        ASSIGN                                                   !1, $4
    6     7        INIT_FCALL                                               'escapeshellcmd'
          8        NOP                                                      
          9        FAST_CONCAT                                      ~6      'rm+', !1
         10        SEND_VAL                                                 ~6
         11        DO_ICALL                                         $7      
         12        ECHO                                                     $7
         13      > RETURN                                                   1

Generated using Vulcan Logic Dumper, using php 8.0.0


preferences:
332.39 ms | 1398 KiB | 18 Q