3v4l.org

run code in 200+ php & hhvm versions
Bugs & Features
<?php for($i = 0; $i < 256; ++$i){ for($k = 0; $k < 256; ++$k){ $z = sprintf("%%%08x%%08x", $i, $k); echo $z."\n"; $x = mb_strtolower(urldecode($z)); if($x=="'"){ echo $z."\n"; } } }
based on 4bnve
Finding entry points
Branch analysis from position: 0
1 jumps found. (Code = 42) Position 1 = 27
Branch analysis from position: 27
2 jumps found. (Code = 44) Position 1 = 29, Position 2 = 2
Branch analysis from position: 29
1 jumps found. (Code = 62) Position 1 = -2
Branch analysis from position: 2
1 jumps found. (Code = 42) Position 1 = 24
Branch analysis from position: 24
2 jumps found. (Code = 44) Position 1 = 26, Position 2 = 4
Branch analysis from position: 26
2 jumps found. (Code = 44) Position 1 = 29, Position 2 = 2
Branch analysis from position: 29
Branch analysis from position: 2
Branch analysis from position: 4
2 jumps found. (Code = 43) Position 1 = 21, Position 2 = 23
Branch analysis from position: 21
2 jumps found. (Code = 44) Position 1 = 26, Position 2 = 4
Branch analysis from position: 26
Branch analysis from position: 4
Branch analysis from position: 23
filename:       /in/PmL35
function name:  (null)
number of ops:  30
compiled vars:  !0 = $i, !1 = $k, !2 = $z, !3 = $x
line     #* E I O op                           fetch          ext  return  operands
-------------------------------------------------------------------------------------
   3     0  E >   ASSIGN                                                   !0, 0
         1      > JMP                                                      ->27
   4     2    >   ASSIGN                                                   !1, 0
         3      > JMP                                                      ->24
   5     4    >   INIT_FCALL                                               'sprintf'
         5        SEND_VAL                                                 '%25%25%2508x%25%2508x'
         6        SEND_VAR                                                 !0
         7        SEND_VAR                                                 !1
         8        DO_ICALL                                         $6      
         9        ASSIGN                                                   !2, $6
   6    10        CONCAT                                           ~8      !2, '%0A'
        11        ECHO                                                     ~8
   7    12        INIT_FCALL                                               'mb_strtolower'
        13        INIT_FCALL                                               'urldecode'
        14        SEND_VAR                                                 !2
        15        DO_ICALL                                         $9      
        16        SEND_VAR                                                 $9
        17        DO_ICALL                                         $10     
        18        ASSIGN                                                   !3, $10
   8    19        IS_EQUAL                                         ~12     !3, '%27'
        20      > JMPZ                                                     ~12, ->23
   9    21    >   CONCAT                                           ~13     !2, '%0A'
        22        ECHO                                                     ~13
   4    23    >   PRE_INC                                                  !1
        24    >   IS_SMALLER                                       ~15     !1, 256
        25      > JMPNZ                                                    ~15, ->4
   3    26    >   PRE_INC                                                  !0
        27    >   IS_SMALLER                                       ~17     !0, 256
        28      > JMPNZ                                                    ~17, ->2
  12    29    > > RETURN                                                   1

Generated using Vulcan Logic Dumper, using php 7.3.0