3v4l.org

run code in 300+ 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.0.0


preferences:
172.69 ms | 1432 KiB | 15 Q