3v4l.org

run code in 300+ PHP versions simultaneously
<?php $string1 = str_repeat('x', 100); $string2 = str_repeat('y', 100); $string3 = str_repeat('z', 100); $mark = microtime(true); for($i = 0; $i < 2000; $i++) { ob_start(); for($j = 0; $j < 2000; $j++) echo $string1, $string2, $string3; ob_get_clean(); } echo microtime(true) - $mark;
Finding entry points
Branch analysis from position: 0
1 jumps found. (Code = 42) Position 1 = 34
Branch analysis from position: 34
2 jumps found. (Code = 44) Position 1 = 36, Position 2 = 21
Branch analysis from position: 36
1 jumps found. (Code = 62) Position 1 = -2
Branch analysis from position: 21
1 jumps found. (Code = 42) Position 1 = 29
Branch analysis from position: 29
2 jumps found. (Code = 44) Position 1 = 31, Position 2 = 25
Branch analysis from position: 31
2 jumps found. (Code = 44) Position 1 = 36, Position 2 = 21
Branch analysis from position: 36
Branch analysis from position: 21
Branch analysis from position: 25
2 jumps found. (Code = 44) Position 1 = 31, Position 2 = 25
Branch analysis from position: 31
Branch analysis from position: 25
filename:       /in/48KHh
function name:  (null)
number of ops:  42
compiled vars:  !0 = $string1, !1 = $string2, !2 = $string3, !3 = $mark, !4 = $i, !5 = $j
line      #* E I O op                           fetch          ext  return  operands
-------------------------------------------------------------------------------------
    3     0  E >   INIT_FCALL                                               'str_repeat'
          1        SEND_VAL                                                 'x'
          2        SEND_VAL                                                 100
          3        DO_ICALL                                         $6      
          4        ASSIGN                                                   !0, $6
    4     5        INIT_FCALL                                               'str_repeat'
          6        SEND_VAL                                                 'y'
          7        SEND_VAL                                                 100
          8        DO_ICALL                                         $8      
          9        ASSIGN                                                   !1, $8
    5    10        INIT_FCALL                                               'str_repeat'
         11        SEND_VAL                                                 'z'
         12        SEND_VAL                                                 100
         13        DO_ICALL                                         $10     
         14        ASSIGN                                                   !2, $10
    7    15        INIT_FCALL                                               'microtime'
         16        SEND_VAL                                                 <true>
         17        DO_ICALL                                         $12     
         18        ASSIGN                                                   !3, $12
    9    19        ASSIGN                                                   !4, 0
         20      > JMP                                                      ->34
   11    21    >   INIT_FCALL                                               'ob_start'
         22        DO_ICALL                                                 
   12    23        ASSIGN                                                   !5, 0
         24      > JMP                                                      ->29
         25    >   ECHO                                                     !0
         26        ECHO                                                     !1
         27        ECHO                                                     !2
         28        PRE_INC                                                  !5
         29    >   IS_SMALLER                                               !5, 2000
         30      > JMPNZ                                                    ~18, ->25
   13    31    >   INIT_FCALL                                               'ob_get_clean'
         32        DO_ICALL                                                 
    9    33        PRE_INC                                                  !4
         34    >   IS_SMALLER                                               !4, 2000
         35      > JMPNZ                                                    ~21, ->21
   17    36    >   INIT_FCALL                                               'microtime'
         37        SEND_VAL                                                 <true>
         38        DO_ICALL                                         $22     
         39        SUB                                              ~23     $22, !3
         40        ECHO                                                     ~23
         41      > RETURN                                                   1

Generated using Vulcan Logic Dumper, using php 8.0.0


preferences:
149.63 ms | 1467 KiB | 17 Q