3v4l.org

run code in 300+ PHP versions simultaneously
<?php class thisClass { public $files = array('a č o.png','a č o.png','a č o.png'); } $foo = new thisClass(); define('URL', '127.0.0.1/'); foreach($foo->files as $key => $value){ echo '<a href="' . URL . 'file/show/' . rawurlencode($foo->files[$key]) . '" target="_blank"> Show file </a>' . "\n"; //gives link leading to: 127.0.0.1/file%2Fshow%2Fa č o.png $address = rawurlencode($filename); echo '<a href="' . URL . 'file/show/' . $foo->files[$key] . '" target="_blank"> Show file </a>'; //gives link leading to: 127.0.0.1/file/show/a č o.png } ?>
Finding entry points
Branch analysis from position: 0
2 jumps found. (Code = 77) Position 1 = 9, Position 2 = 36
Branch analysis from position: 9
2 jumps found. (Code = 78) Position 1 = 10, Position 2 = 36
Branch analysis from position: 10
1 jumps found. (Code = 42) Position 1 = 9
Branch analysis from position: 9
Branch analysis from position: 36
1 jumps found. (Code = 62) Position 1 = -2
Branch analysis from position: 36
filename:       /in/0tgOX
function name:  (null)
number of ops:  38
compiled vars:  !0 = $foo, !1 = $value, !2 = $key, !3 = $address, !4 = $filename
line      #* E I O op                           fetch          ext  return  operands
-------------------------------------------------------------------------------------
    5     0  E >   NEW                                              $5      'thisClass'
          1        DO_FCALL                                      0          
          2        ASSIGN                                                   !0, $5
    6     3        INIT_FCALL                                               'define'
          4        SEND_VAL                                                 'URL'
          5        SEND_VAL                                                 '127.0.0.1%2F'
          6        DO_ICALL                                                 
    7     7        FETCH_OBJ_R                                      ~9      !0, 'files'
          8      > FE_RESET_R                                       $10     ~9, ->36
          9    > > FE_FETCH_R                                       ~11     $10, !1, ->36
         10    >   ASSIGN                                                   !2, ~11
    8    11        FETCH_CONSTANT                                   ~13     'URL'
         12        CONCAT                                           ~14     '%3Ca+href%3D%22', ~13
         13        CONCAT                                           ~15     ~14, 'file%2Fshow%2F'
         14        INIT_FCALL                                               'rawurlencode'
         15        FETCH_OBJ_R                                      ~16     !0, 'files'
         16        FETCH_DIM_R                                      ~17     ~16, !2
         17        SEND_VAL                                                 ~17
         18        DO_ICALL                                         $18     
         19        CONCAT                                           ~19     ~15, $18
         20        CONCAT                                           ~20     ~19, '%22+target%3D%22_blank%22%3E+Show+file+%3C%2Fa%3E'
         21        CONCAT                                           ~21     ~20, '%0A'
         22        ECHO                                                     ~21
   11    23        INIT_FCALL                                               'rawurlencode'
         24        SEND_VAR                                                 !4
         25        DO_ICALL                                         $22     
         26        ASSIGN                                                   !3, $22
   12    27        FETCH_CONSTANT                                   ~24     'URL'
         28        CONCAT                                           ~25     '%3Ca+href%3D%22', ~24
         29        CONCAT                                           ~26     ~25, 'file%2Fshow%2F'
         30        FETCH_OBJ_R                                      ~27     !0, 'files'
         31        FETCH_DIM_R                                      ~28     ~27, !2
         32        CONCAT                                           ~29     ~26, ~28
         33        CONCAT                                           ~30     ~29, '%22+target%3D%22_blank%22%3E+Show+file+%3C%2Fa%3E'
         34        ECHO                                                     ~30
    7    35      > JMP                                                      ->9
         36    >   FE_FREE                                                  $10
   15    37      > RETURN                                                   1

Class thisClass: [no user functions]

Generated using Vulcan Logic Dumper, using php 8.0.0


preferences:
144.8 ms | 1392 KiB | 17 Q