3v4l.org

run code in 300+ PHP versions simultaneously
<?php for ($i = 18; $i < 23; ++$i) { $hash = '$2y$10$' . str_repeat('A', $i + 1); $sum = 0.0; for ($j = 0; $j < 5; ++$j) { $start = microtime(true); password_verify('a', $hash); $end = microtime(true); $sum += $end - $start; unset($start, $end); } printf("%02d: %.5f\n", $i + 1, $sum / 30); }
Finding entry points
Branch analysis from position: 0
1 jumps found. (Code = 42) Position 1 = 39
Branch analysis from position: 39
2 jumps found. (Code = 44) Position 1 = 41, Position 2 = 2
Branch analysis from position: 41
1 jumps found. (Code = 62) Position 1 = -2
Branch analysis from position: 2
1 jumps found. (Code = 42) Position 1 = 29
Branch analysis from position: 29
2 jumps found. (Code = 44) Position 1 = 31, Position 2 = 12
Branch analysis from position: 31
2 jumps found. (Code = 44) Position 1 = 41, Position 2 = 2
Branch analysis from position: 41
Branch analysis from position: 2
Branch analysis from position: 12
2 jumps found. (Code = 44) Position 1 = 31, Position 2 = 12
Branch analysis from position: 31
Branch analysis from position: 12
filename:       /in/GVKCf
function name:  (null)
number of ops:  42
compiled vars:  !0 = $i, !1 = $hash, !2 = $sum, !3 = $j, !4 = $start, !5 = $end
line      #* E I O op                           fetch          ext  return  operands
-------------------------------------------------------------------------------------
    3     0  E >   ASSIGN                                                   !0, 18
          1      > JMP                                                      ->39
    4     2    >   INIT_FCALL                                               'str_repeat'
          3        SEND_VAL                                                 'A'
          4        ADD                                              ~7      !0, 1
          5        SEND_VAL                                                 ~7
          6        DO_ICALL                                         $8      
          7        CONCAT                                           ~9      '%242y%2410%24', $8
          8        ASSIGN                                                   !1, ~9
    5     9        ASSIGN                                                   !2, 0
    6    10        ASSIGN                                                   !3, 0
         11      > JMP                                                      ->29
    7    12    >   INIT_FCALL                                               'microtime'
         13        SEND_VAL                                                 <true>
         14        DO_ICALL                                         $13     
         15        ASSIGN                                                   !4, $13
    8    16        INIT_FCALL                                               'password_verify'
         17        SEND_VAL                                                 'a'
         18        SEND_VAR                                                 !1
         19        DO_ICALL                                                 
    9    20        INIT_FCALL                                               'microtime'
         21        SEND_VAL                                                 <true>
         22        DO_ICALL                                         $16     
         23        ASSIGN                                                   !5, $16
   10    24        SUB                                              ~18     !5, !4
         25        ASSIGN_OP                                     1          !2, ~18
   11    26        UNSET_CV                                                 !4
         27        UNSET_CV                                                 !5
    6    28        PRE_INC                                                  !3
         29    >   IS_SMALLER                                               !3, 5
         30      > JMPNZ                                                    ~21, ->12
   13    31    >   INIT_FCALL                                               'printf'
         32        SEND_VAL                                                 '%2502d%3A+%25.5f%0A'
         33        ADD                                              ~22     !0, 1
         34        SEND_VAL                                                 ~22
         35        DIV                                              ~23     !2, 30
         36        SEND_VAL                                                 ~23
         37        DO_ICALL                                                 
    3    38        PRE_INC                                                  !0
         39    >   IS_SMALLER                                               !0, 23
         40      > JMPNZ                                                    ~26, ->2
   14    41    > > RETURN                                                   1

Generated using Vulcan Logic Dumper, using php 8.0.0


preferences:
145.05 ms | 1400 KiB | 21 Q