3v4l.org

run code in 200+ php & hhvm versions
Bugs & Features
<?php $base16Alphabet = 'abcdefghijklmnop'; $hash = "\x01\x23\x45\x67\x89\xAB\xCD\xEF"; $result = ''; for ($i = 0; $i < 16; $i++) { $byte = ord($hash[$i]); $result .= $base16Alphabet[$byte & 0xF0 >> 4] . $base16Alphabet[$byte & 0x0F]; } echo $result;
Finding entry points
Branch analysis from position: 0
Jump found. Position 1 = 18
Branch analysis from position: 18
Jump found. Position 1 = 20, Position 2 = 5
Branch analysis from position: 20
Jump found. Position 1 = -2
Branch analysis from position: 5
Jump found. Position 1 = 20, Position 2 = 5
Branch analysis from position: 20
Branch analysis from position: 5
filename:       /in/ZTa1M
function name:  (null)
number of ops:  22
compiled vars:  !0 = $base16Alphabet, !1 = $hash, !2 = $result, !3 = $i, !4 = $byte
line     #* E I O op                           fetch          ext  return  operands
-------------------------------------------------------------------------------------
   3     0  E >   ASSIGN                                                   !0, 'abcdefghijklmnop'
   5     1        ASSIGN                                                   !1, '%01%23Eg%89%AB%CD%EF'
   6     2        ASSIGN                                                   !2, ''
   7     3        ASSIGN                                                   !3, 0
         4      > JMP                                                      ->18
   8     5    >   INIT_FCALL                                               'ord'
         6        FETCH_DIM_R                                      $9      !1, !3
         7        SEND_VAR                                                 $9
         8        DO_ICALL                                         $10     
         9        ASSIGN                                                   !4, $10
   9    10        BW_AND                                           ~12     !4, 15
        11        FETCH_DIM_R                                      $13     !0, ~12
        12        BW_AND                                           ~14     !4, 15
        13        FETCH_DIM_R                                      $15     !0, ~14
        14        CONCAT                                           ~16     $13, $15
        15        ASSIGN_CONCAT                                 0          !2, ~16
   7    16        POST_INC                                         ~18     !3
        17        FREE                                                     ~18
        18    >   IS_SMALLER                                       ~19     !3, 16
        19      > JMPNZ                                                    ~19, ->5
  12    20    >   ECHO                                                     !2
        21      > RETURN                                                   1

Generated using Vulcan Logic Dumper, using php 7.2.0