3v4l.org

run code in 300+ PHP versions simultaneously
<?php $iteration = 1e6; $etc = ""; // const $start = microtime(true); const TEST = "test"; for ($i = 0; $i < $iteration; $i++) { $etc = TEST; } printf("const: %0.6f s\n", microtime(true) - $start); // var $start = microtime(true); $TEST = "test"; for ($i = 0; $i < $iteration; $i++) { $etc = $TEST; } printf("var : %0.6f s\n", microtime(true) - $start);
Finding entry points
Branch analysis from position: 0
1 jumps found. (Code = 42) Position 1 = 12
Branch analysis from position: 12
2 jumps found. (Code = 44) Position 1 = 14, Position 2 = 9
Branch analysis from position: 14
1 jumps found. (Code = 42) Position 1 = 31
Branch analysis from position: 31
2 jumps found. (Code = 44) Position 1 = 33, Position 2 = 29
Branch analysis from position: 33
1 jumps found. (Code = 62) Position 1 = -2
Branch analysis from position: 29
2 jumps found. (Code = 44) Position 1 = 33, Position 2 = 29
Branch analysis from position: 33
Branch analysis from position: 29
Branch analysis from position: 9
2 jumps found. (Code = 44) Position 1 = 14, Position 2 = 9
Branch analysis from position: 14
Branch analysis from position: 9
filename:       /in/M13D1
function name:  (null)
number of ops:  42
compiled vars:  !0 = $iteration, !1 = $etc, !2 = $start, !3 = $i, !4 = $TEST
line      #* E I O op                           fetch          ext  return  operands
-------------------------------------------------------------------------------------
    2     0  E >   ASSIGN                                                   !0, 1.0e+6
    4     1        ASSIGN                                                   !1, ''
    7     2        INIT_FCALL                                               'microtime'
          3        SEND_VAL                                                 <true>
          4        DO_ICALL                                         $7      
          5        ASSIGN                                                   !2, $7
    8     6        DECLARE_CONST                                            'TEST', 'test'
    9     7        ASSIGN                                                   !3, 0
          8      > JMP                                                      ->12
   10     9    >   FETCH_CONSTANT                                   ~10     'TEST'
         10        ASSIGN                                                   !1, ~10
    9    11        PRE_INC                                                  !3
         12    >   IS_SMALLER                                               !3, !0
         13      > JMPNZ                                                    ~13, ->9
   12    14    >   INIT_FCALL                                               'printf'
         15        SEND_VAL                                                 'const%3A+%250.6f+s%0A'
         16        INIT_FCALL                                               'microtime'
         17        SEND_VAL                                                 <true>
         18        DO_ICALL                                         $14     
         19        SUB                                              ~15     $14, !2
         20        SEND_VAL                                                 ~15
         21        DO_ICALL                                                 
   15    22        INIT_FCALL                                               'microtime'
         23        SEND_VAL                                                 <true>
         24        DO_ICALL                                         $17     
         25        ASSIGN                                                   !2, $17
   16    26        ASSIGN                                                   !4, 'test'
   17    27        ASSIGN                                                   !3, 0
         28      > JMP                                                      ->31
   18    29    >   ASSIGN                                                   !1, !4
   17    30        PRE_INC                                                  !3
         31    >   IS_SMALLER                                               !3, !0
         32      > JMPNZ                                                    ~23, ->29
   20    33    >   INIT_FCALL                                               'printf'
         34        SEND_VAL                                                 'var++%3A+%250.6f+s%0A'
         35        INIT_FCALL                                               'microtime'
         36        SEND_VAL                                                 <true>
         37        DO_ICALL                                         $24     
         38        SUB                                              ~25     $24, !2
         39        SEND_VAL                                                 ~25
         40        DO_ICALL                                                 
         41      > RETURN                                                   1

Generated using Vulcan Logic Dumper, using php 8.0.0


preferences:
248.97 ms | 1400 KiB | 18 Q