3v4l.org

run code in 300+ PHP versions simultaneously
<?php function getFingeprint($publickey) { $hash = hash('sha256', $publickey); return implode(' ', [ substr($hash, 0, 8), substr($hash, 8, 8), substr($hash, 16, 8), substr($hash, 24, 8), '', // Extra space substr($hash, 32, 8), substr($hash, 40, 8), substr($hash, 48, 8), substr($hash, 56, 8), ]); } echo getFingerprint('-----BEGIN PUBLIC KEY----- MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAq/fYc4fDkgMdv7qdM7Fc yjS7IVvPWoV8z6V277jmKL735UoGsZunY0RJdxOW9Ucep/XMc0hIcNogmyYpCkna WB/20xI4sWuFgLXVHZhpU8k+sT16GzPY4/2RnvNs0cFCEA4CeI2nHOp+RnpzOXAO jv6K2LrH7fbChkXl8WHiC1+xC7a4zxvm1XbsUE6Jf/m+xljhwQWFpDLPIOvE8uzG Oo/MYxCCgxCzy/ze8V9hnyQyI4FHbKTYf44NiJP99svppEfbUkVsMlMwhtbWEUAh pZSwmsRV7aH+H8lCaVe5fxs4Sm6UcU6yImFiqvTpB92ElrwiHDZOanidimKynf0x YQIDAQAB -----END PUBLIC KEY-----');
Finding entry points
Branch analysis from position: 0
1 jumps found. (Code = 62) Position 1 = -2
filename:       /in/q6CLn
function name:  (null)
number of ops:  5
compiled vars:  none
line      #* E I O op                           fetch          ext  return  operands
-------------------------------------------------------------------------------------
   18     0  E >   INIT_FCALL_BY_NAME                                       'getFingerprint'
          1        SEND_VAL_EX                                              '-----BEGIN+PUBLIC+KEY-----%0AMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAq%2FfYc4fDkgMdv7qdM7Fc%0AyjS7IVvPWoV8z6V277jmKL735UoGsZunY0RJdxOW9Ucep%2FXMc0hIcNogmyYpCkna%0AWB%2F20xI4sWuFgLXVHZhpU8k%2BsT16GzPY4%2F2RnvNs0cFCEA4CeI2nHOp%2BRnpzOXAO%0Ajv6K2LrH7fbChkXl8WHiC1%2BxC7a4zxvm1XbsUE6Jf%2Fm%2BxljhwQWFpDLPIOvE8uzG%0AOo%2FMYxCCgxCzy%2Fze8V9hnyQyI4FHbKTYf44NiJP99svppEfbUkVsMlMwhtbWEUAh%0ApZSwmsRV7aH%2BH8lCaVe5fxs4Sm6UcU6yImFiqvTpB92ElrwiHDZOanidimKynf0x%0AYQIDAQAB%0A-----END+PUBLIC+KEY-----'
          2        DO_FCALL                                      0  $0      
          3        ECHO                                                     $0
   26     4      > RETURN                                                   1

Function getfingeprint:
Finding entry points
Branch analysis from position: 0
1 jumps found. (Code = 62) Position 1 = -2
filename:       /in/q6CLn
function name:  getFingeprint
number of ops:  61
compiled vars:  !0 = $publickey, !1 = $hash
line      #* E I O op                           fetch          ext  return  operands
-------------------------------------------------------------------------------------
    2     0  E >   RECV                                             !0      
    4     1        INIT_FCALL                                               'hash'
          2        SEND_VAL                                                 'sha256'
          3        SEND_VAR                                                 !0
          4        DO_ICALL                                         $2      
          5        ASSIGN                                                   !1, $2
    5     6        INIT_FCALL                                               'implode'
          7        SEND_VAL                                                 '+'
    6     8        INIT_FCALL                                               'substr'
          9        SEND_VAR                                                 !1
         10        SEND_VAL                                                 0
         11        SEND_VAL                                                 8
         12        DO_ICALL                                         $4      
         13        INIT_ARRAY                                       ~5      $4
    7    14        INIT_FCALL                                               'substr'
         15        SEND_VAR                                                 !1
         16        SEND_VAL                                                 8
         17        SEND_VAL                                                 8
         18        DO_ICALL                                         $6      
         19        ADD_ARRAY_ELEMENT                                ~5      $6
    8    20        INIT_FCALL                                               'substr'
         21        SEND_VAR                                                 !1
         22        SEND_VAL                                                 16
         23        SEND_VAL                                                 8
         24        DO_ICALL                                         $7      
         25        ADD_ARRAY_ELEMENT                                ~5      $7
    9    26        INIT_FCALL                                               'substr'
         27        SEND_VAR                                                 !1
         28        SEND_VAL                                                 24
         29        SEND_VAL                                                 8
         30        DO_ICALL                                         $8      
         31        ADD_ARRAY_ELEMENT                                ~5      $8
   10    32        ADD_ARRAY_ELEMENT                                ~5      ''
   11    33        INIT_FCALL                                               'substr'
         34        SEND_VAR                                                 !1
         35        SEND_VAL                                                 32
         36        SEND_VAL                                                 8
         37        DO_ICALL                                         $9      
         38        ADD_ARRAY_ELEMENT                                ~5      $9
   12    39        INIT_FCALL                                               'substr'
         40        SEND_VAR                                                 !1
         41        SEND_VAL                                                 40
         42        SEND_VAL                                                 8
         43        DO_ICALL                                         $10     
         44        ADD_ARRAY_ELEMENT                                ~5      $10
   13    45        INIT_FCALL                                               'substr'
         46        SEND_VAR                                                 !1
         47        SEND_VAL                                                 48
         48        SEND_VAL                                                 8
         49        DO_ICALL                                         $11     
         50        ADD_ARRAY_ELEMENT                                ~5      $11
   14    51        INIT_FCALL                                               'substr'
         52        SEND_VAR                                                 !1
         53        SEND_VAL                                                 56
         54        SEND_VAL                                                 8
         55        DO_ICALL                                         $12     
         56        ADD_ARRAY_ELEMENT                                ~5      $12
         57        SEND_VAL                                                 ~5
         58        DO_ICALL                                         $13     
         59      > RETURN                                                   $13
   16    60*     > RETURN                                                   null

End of function getfingeprint

Generated using Vulcan Logic Dumper, using php 8.0.0


preferences:
168.45 ms | 1392 KiB | 19 Q