3v4l.org

run code in 300+ PHP versions simultaneously
<?php error_reporting(E_ALL | E_STRICT); define('ITERATIONS', 2000000); function foo($a) { return; } $start = microtime(true); for ($i=0; $i < ITERATIONS; ++$i) { call_user_func_array('foo', array(1)); } $stop = microtime(true); echo "Test name: " . ($stop - $start) . " seconds". PHP_EOL;
Finding entry points
Branch analysis from position: 0
1 jumps found. (Code = 42) Position 1 = 18
Branch analysis from position: 18
2 jumps found. (Code = 44) Position 1 = 21, Position 2 = 13
Branch analysis from position: 21
1 jumps found. (Code = 62) Position 1 = -2
Branch analysis from position: 13
2 jumps found. (Code = 44) Position 1 = 21, Position 2 = 13
Branch analysis from position: 21
Branch analysis from position: 13
filename:       /in/IuSlK
function name:  (null)
number of ops:  31
compiled vars:  !0 = $start, !1 = $i, !2 = $stop
line      #* E I O op                           fetch          ext  return  operands
-------------------------------------------------------------------------------------
    2     0  E >   INIT_FCALL                                               'error_reporting'
          1        SEND_VAL                                                 32767
          2        DO_ICALL                                                 
    3     3        INIT_FCALL                                               'define'
          4        SEND_VAL                                                 'ITERATIONS'
          5        SEND_VAL                                                 2000000
          6        DO_ICALL                                                 
   11     7        INIT_FCALL                                               'microtime'
          8        SEND_VAL                                                 <true>
          9        DO_ICALL                                         $5      
         10        ASSIGN                                                   !0, $5
   12    11        ASSIGN                                                   !1, 0
         12      > JMP                                                      ->18
   13    13    >   INIT_FCALL                                               'foo'
         14        SEND_ARRAY                                               <array>
         15        CHECK_UNDEF_ARGS                                         
         16        DO_FCALL                                      0          
   12    17        PRE_INC                                                  !1
         18    >   FETCH_CONSTANT                                   ~10     'ITERATIONS'
         19        IS_SMALLER                                               !1, ~10
         20      > JMPNZ                                                    ~11, ->13
   16    21    >   INIT_FCALL                                               'microtime'
         22        SEND_VAL                                                 <true>
         23        DO_ICALL                                         $12     
         24        ASSIGN                                                   !2, $12
   17    25        SUB                                              ~14     !2, !0
         26        CONCAT                                           ~15     'Test+name%3A+', ~14
         27        CONCAT                                           ~16     ~15, '+seconds'
         28        CONCAT                                           ~17     ~16, '%0A'
         29        ECHO                                                     ~17
         30      > RETURN                                                   1

Function foo:
Finding entry points
Branch analysis from position: 0
1 jumps found. (Code = 62) Position 1 = -2
filename:       /in/IuSlK
function name:  foo
number of ops:  3
compiled vars:  !0 = $a
line      #* E I O op                           fetch          ext  return  operands
-------------------------------------------------------------------------------------
    5     0  E >   RECV                                             !0      
    6     1      > RETURN                                                   null
    7     2*     > RETURN                                                   null

End of function foo

Generated using Vulcan Logic Dumper, using php 8.0.0


preferences:
147.27 ms | 1399 KiB | 20 Q