3v4l.org

run code in 300+ PHP versions simultaneously
<?php $alpha = range('A', 'Z'); $ascii = array_map(function($_) { return $_ + (1 << 1 << 1 << 1 << 1 << 1 << 1); }, range(1, 26)); $alpha_vars = array_map(function($_) { return "$$_"; }, $alpha); $ascii_var_list = join(',', $alpha_vars); ("list($ascii_var_list) = \$ascii;"); $sp = 32; $_='_'; $ss='ss'; $hb=$_.$ss.$_.$ss.$_.$ss.$_.$ss.$_.$ss.$_.$ss.$_.$ss.$_.$ss.$_.$ss.$_.$ss.$_.$ss.$_. $ss.$_.$ss.$_.$ss.$_.$ss.$_.$ss.$_.$ss.$_.$ss.$_.$ss.$_.$ss.$_.$ss.$_.$ss.$_.$ss.$_.$ss; $decrypted_data = str_rot13("UNCCL OVEGUQNL WBUA CVYR"); echo "1"; //$hb=""; //for($hb=""; count($hb)/3 < count($decrypted_data); $hb.=$_.$ss); $john_purrier_rocks = str_split($decrypted_data); $brandon_philips_kicks_ass = array_map(function($_) { return ($_ === ' ') ? '$sp' : "\$$_"; }, $john_purrier_rocks); $rabble_makes_me_moist = join(',', $brandon_philips_kicks_ass); ("\$rabble_makes_me_moist = array($rabble_makes_me_moist);"); $appfog_owns = array_map('chr', $rabble_makes_me_moist); array_unshift($appfog_owns, str_replace('_s', '%', $hb)); $happy_birthday = call_user_func_array('sprintf', $appfog_owns); echo $happy_birthday; ?>
Finding entry points
Branch analysis from position: 0
1 jumps found. (Code = 62) Position 1 = -2
filename:       /in/veZ3U
function name:  (null)
number of ops:  126
compiled vars:  !0 = $alpha, !1 = $ascii, !2 = $alpha_vars, !3 = $ascii_var_list, !4 = $sp, !5 = $_, !6 = $ss, !7 = $hb, !8 = $decrypted_data, !9 = $john_purrier_rocks, !10 = $brandon_philips_kicks_ass, !11 = $rabble_makes_me_moist, !12 = $appfog_owns, !13 = $happy_birthday
line      #* E I O op                           fetch          ext  return  operands
-------------------------------------------------------------------------------------
    4     0  E >   INIT_FCALL                                               'range'
          1        SEND_VAL                                                 'A'
          2        SEND_VAL                                                 'Z'
          3        DO_ICALL                                         $14     
          4        ASSIGN                                                   !0, $14
    6     5        INIT_FCALL                                               'array_map'
          6        DECLARE_LAMBDA_FUNCTION                                  '%00%7Bclosure%7D%2Fin%2FveZ3U%3A6%240'
          7        SEND_VAL                                                 ~16
          8        INIT_FCALL                                               'range'
          9        SEND_VAL                                                 1
         10        SEND_VAL                                                 26
         11        DO_ICALL                                         $17     
         12        SEND_VAR                                                 $17
         13        DO_ICALL                                         $18     
         14        ASSIGN                                                   !1, $18
    9    15        INIT_FCALL                                               'array_map'
         16        DECLARE_LAMBDA_FUNCTION                                  '%00%7Bclosure%7D%2Fin%2FveZ3U%3A9%241'
         17        SEND_VAL                                                 ~20
         18        SEND_VAR                                                 !0
         19        DO_ICALL                                         $21     
         20        ASSIGN                                                   !2, $21
   10    21        INIT_FCALL                                               'join'
         22        SEND_VAL                                                 '%2C'
         23        SEND_VAR                                                 !2
         24        DO_ICALL                                         $23     
         25        ASSIGN                                                   !3, $23
   11    26        ROPE_INIT                                     3  ~26     'list%28'
         27        ROPE_ADD                                      1  ~26     ~26, !3
         28        ROPE_END                                      2  ~25     ~26, '%29+%3D+%24ascii%3B'
         29        FREE                                                     ~25
   12    30        ASSIGN                                                   !4, 32
   14    31        ASSIGN                                                   !5, '_'
   15    32        ASSIGN                                                   !6, 'ss'
   16    33        CONCAT                                           ~31     !5, !6
         34        CONCAT                                           ~32     ~31, !5
         35        CONCAT                                           ~33     ~32, !6
         36        CONCAT                                           ~34     ~33, !5
         37        CONCAT                                           ~35     ~34, !6
         38        CONCAT                                           ~36     ~35, !5
         39        CONCAT                                           ~37     ~36, !6
         40        CONCAT                                           ~38     ~37, !5
         41        CONCAT                                           ~39     ~38, !6
         42        CONCAT                                           ~40     ~39, !5
         43        CONCAT                                           ~41     ~40, !6
         44        CONCAT                                           ~42     ~41, !5
         45        CONCAT                                           ~43     ~42, !6
         46        CONCAT                                           ~44     ~43, !5
         47        CONCAT                                           ~45     ~44, !6
         48        CONCAT                                           ~46     ~45, !5
         49        CONCAT                                           ~47     ~46, !6
         50        CONCAT                                           ~48     ~47, !5
         51        CONCAT                                           ~49     ~48, !6
         52        CONCAT                                           ~50     ~49, !5
         53        CONCAT                                           ~51     ~50, !6
         54        CONCAT                                           ~52     ~51, !5
   17    55        CONCAT                                           ~53     ~52, !6
         56        CONCAT                                           ~54     ~53, !5
         57        CONCAT                                           ~55     ~54, !6
         58        CONCAT                                           ~56     ~55, !5
         59        CONCAT                                           ~57     ~56, !6
         60        CONCAT                                           ~58     ~57, !5
         61        CONCAT                                           ~59     ~58, !6
         62        CONCAT                                           ~60     ~59, !5
         63        CONCAT                                           ~61     ~60, !6
         64        CONCAT                                           ~62     ~61, !5
         65        CONCAT                                           ~63     ~62, !6
         66        CONCAT                                           ~64     ~63, !5
         67        CONCAT                                           ~65     ~64, !6
         68        CONCAT                                           ~66     ~65, !5
         69        CONCAT                                           ~67     ~66, !6
         70        CONCAT                                           ~68     ~67, !5
         71        CONCAT                                           ~69     ~68, !6
         72        CONCAT                                           ~70     ~69, !5
         73        CONCAT                                           ~71     ~70, !6
         74        CONCAT                                           ~72     ~71, !5
         75        CONCAT                                           ~73     ~72, !6
         76        CONCAT                                           ~74     ~73, !5
         77        CONCAT                                           ~75     ~74, !6
         78        CONCAT                                           ~76     ~75, !5
         79        CONCAT                                           ~77     ~76, !6
   16    80        ASSIGN                                                   !7, ~77
   21    81        INIT_FCALL                                               'str_rot13'
         82        SEND_VAL                                                 'UNCCL+OVEGUQNL+WBUA+CVYR'
         83        DO_ICALL                                         $79     
         84        ASSIGN                                                   !8, $79
   23    85        ECHO                                                     '1'
   31    86        INIT_FCALL                                               'str_split'
         87        SEND_VAR                                                 !8
         88        DO_ICALL                                         $81     
         89        ASSIGN                                                   !9, $81
   32    90        INIT_FCALL                                               'array_map'
         91        DECLARE_LAMBDA_FUNCTION                                  '%00%7Bclosure%7D%2Fin%2FveZ3U%3A32%242'
         92        SEND_VAL                                                 ~83
         93        SEND_VAR                                                 !9
         94        DO_ICALL                                         $84     
         95        ASSIGN                                                   !10, $84
   33    96        INIT_FCALL                                               'join'
         97        SEND_VAL                                                 '%2C'
         98        SEND_VAR                                                 !10
         99        DO_ICALL                                         $86     
        100        ASSIGN                                                   !11, $86
   34   101        ROPE_INIT                                     3  ~89     '%24rabble_makes_me_moist+%3D+array%28'
        102        ROPE_ADD                                      1  ~89     ~89, !11
        103        ROPE_END                                      2  ~88     ~89, '%29%3B'
        104        FREE                                                     ~88
   35   105        INIT_FCALL                                               'array_map'
        106        SEND_VAL                                                 'chr'
        107        SEND_VAR                                                 !11
        108        DO_ICALL                                         $91     
        109        ASSIGN                                                   !12, $91
   36   110        INIT_FCALL                                               'array_unshift'
        111        SEND_REF                                                 !12
        112        INIT_FCALL                                               'str_replace'
        113        SEND_VAL                                                 '_s'
        114        SEND_VAL                                                 '%25'
        115        SEND_VAR                                                 !7
        116        DO_ICALL                                         $93     
        117        SEND_VAR                                                 $93
        118        DO_ICALL                                                 
   37   119        INIT_FCALL                                               'sprintf'
        120        SEND_ARRAY                                               !12
        121        CHECK_UNDEF_ARGS                                         
        122        DO_FCALL                                      0  $95     
        123        ASSIGN                                                   !13, $95
   38   124        ECHO                                                     !13
   42   125      > RETURN                                                   1

Function %00%7Bclosure%7D%2Fin%2FveZ3U%3A6%240:
Finding entry points
Branch analysis from position: 0
1 jumps found. (Code = 62) Position 1 = -2
filename:       /in/veZ3U
function name:  {closure}
number of ops:  4
compiled vars:  !0 = $_
line      #* E I O op                           fetch          ext  return  operands
-------------------------------------------------------------------------------------
    6     0  E >   RECV                                             !0      
          1        ADD                                              ~1      !0, 64
          2      > RETURN                                                   ~1
          3*     > RETURN                                                   null

End of function %00%7Bclosure%7D%2Fin%2FveZ3U%3A6%240

Function %00%7Bclosure%7D%2Fin%2FveZ3U%3A9%241:
Finding entry points
Branch analysis from position: 0
1 jumps found. (Code = 62) Position 1 = -2
filename:       /in/veZ3U
function name:  {closure}
number of ops:  5
compiled vars:  !0 = $_
line      #* E I O op                           fetch          ext  return  operands
-------------------------------------------------------------------------------------
    9     0  E >   RECV                                             !0      
          1        NOP                                                      
          2        FAST_CONCAT                                      ~1      '%24', !0
          3      > RETURN                                                   ~1
          4*     > RETURN                                                   null

End of function %00%7Bclosure%7D%2Fin%2FveZ3U%3A9%241

Function %00%7Bclosure%7D%2Fin%2FveZ3U%3A32%242:
Finding entry points
Branch analysis from position: 0
2 jumps found. (Code = 43) Position 1 = 3, Position 2 = 5
Branch analysis from position: 3
1 jumps found. (Code = 42) Position 1 = 8
Branch analysis from position: 8
1 jumps found. (Code = 62) Position 1 = -2
Branch analysis from position: 5
1 jumps found. (Code = 62) Position 1 = -2
filename:       /in/veZ3U
function name:  {closure}
number of ops:  10
compiled vars:  !0 = $_
line      #* E I O op                           fetch          ext  return  operands
-------------------------------------------------------------------------------------
   32     0  E >   RECV                                             !0      
          1        IS_IDENTICAL                                             !0, '+'
          2      > JMPZ                                                     ~1, ->5
          3    >   QM_ASSIGN                                        ~2      '%24sp'
          4      > JMP                                                      ->8
          5    >   NOP                                                      
          6        FAST_CONCAT                                      ~3      '%24', !0
          7        QM_ASSIGN                                        ~2      ~3
          8    > > RETURN                                                   ~2
          9*     > RETURN                                                   null

End of function %00%7Bclosure%7D%2Fin%2FveZ3U%3A32%242

Generated using Vulcan Logic Dumper, using php 8.0.0


preferences:
164.78 ms | 1408 KiB | 29 Q