3v4l.org

run code in 500+ PHP versions simultaneously
<?php $_GET['str1'] = ["a"]; $_GET['str2'] = ["b"]; $salt = "aaabdnelnFnekknfn"; if($_GET['str1'] !== $_GET['str2'] and $_GET['str1'] and $_GET['str2']) { $hash1 = hash('sha256', $salt . $_GET['str1']); $hash2 = hash('sha256', $salt . $_GET['str2']); if($hash1 === $hash2) { var_dump($_GET['str1'],$_GET['str2']); } }
Finding entry points
Branch analysis from position: 0
2 jumps found. (Code = 46) Position 1 = 13, Position 2 = 16
Branch analysis from position: 13
2 jumps found. (Code = 46) Position 1 = 17, Position 2 = 20
Branch analysis from position: 17
2 jumps found. (Code = 43) Position 1 = 21, Position 2 = 47
Branch analysis from position: 21
2 jumps found. (Code = 43) Position 1 = 39, Position 2 = 47
Branch analysis from position: 39
1 jumps found. (Code = 62) Position 1 = -2
Branch analysis from position: 47
Branch analysis from position: 47
Branch analysis from position: 20
Branch analysis from position: 16
filename:       /in/SPYKb
function name:  (null)
number of ops:  48
compiled vars:  !0 = $salt, !1 = $hash1, !2 = $hash2
line      #* E I O op                               fetch          ext  return  operands
-----------------------------------------------------------------------------------------
    2     0  E >   FETCH_W                          global              $3      '_GET'
          1        ASSIGN_DIM                                                   $3, 'str1'
          2        OP_DATA                                                      <array>
    3     3        FETCH_W                          global              $5      '_GET'
          4        ASSIGN_DIM                                                   $5, 'str2'
          5        OP_DATA                                                      <array>
    4     6        ASSIGN                                                       !0, 'aaabdnelnFnekknfn'
    6     7        FETCH_R                          global              ~8      '_GET'
          8        FETCH_DIM_R                                          ~9      ~8, 'str1'
          9        FETCH_R                          global              ~10     '_GET'
         10        FETCH_DIM_R                                          ~11     ~10, 'str2'
         11        IS_NOT_IDENTICAL                                     ~12     ~9, ~11
         12      > JMPZ_EX                                              ~12     ~12, ->16
         13    >   FETCH_R                          global              ~13     '_GET'
         14        FETCH_DIM_R                                          ~14     ~13, 'str1'
         15        BOOL                                                 ~12     ~14
         16    > > JMPZ_EX                                              ~12     ~12, ->20
         17    >   FETCH_R                          global              ~15     '_GET'
         18        FETCH_DIM_R                                          ~16     ~15, 'str2'
         19        BOOL                                                 ~12     ~16
         20    > > JMPZ                                                         ~12, ->47
    8    21    >   INIT_FCALL                                                   'hash'
         22        SEND_VAL                                                     'sha256'
         23        FETCH_R                          global              ~17     '_GET'
         24        FETCH_DIM_R                                          ~18     ~17, 'str1'
         25        CONCAT                                               ~19     !0, ~18
         26        SEND_VAL                                                     ~19
         27        DO_ICALL                                             $20     
         28        ASSIGN                                                       !1, $20
    9    29        INIT_FCALL                                                   'hash'
         30        SEND_VAL                                                     'sha256'
         31        FETCH_R                          global              ~22     '_GET'
         32        FETCH_DIM_R                                          ~23     ~22, 'str2'
         33        CONCAT                                               ~24     !0, ~23
         34        SEND_VAL                                                     ~24
         35        DO_ICALL                                             $25     
         36        ASSIGN                                                       !2, $25
   11    37        IS_IDENTICAL                                                 !1, !2
         38      > JMPZ                                                         ~27, ->47
   12    39    >   INIT_FCALL                                                   'var_dump'
         40        FETCH_R                          global              ~28     '_GET'
         41        FETCH_DIM_R                                          ~29     ~28, 'str1'
         42        SEND_VAL                                                     ~29
         43        FETCH_R                          global              ~30     '_GET'
         44        FETCH_DIM_R                                          ~31     ~30, 'str2'
         45        SEND_VAL                                                     ~31
         46        DO_ICALL                                                     
   15    47    > > RETURN                                                       1

Generated using Vulcan Logic Dumper, using php 8.5.0


preferences:
151.95 ms | 2119 KiB | 10 Q