3v4l.org

run code in 300+ PHP versions simultaneously
<?php $a = 1; $b = 2; $c = 3; $d = 4; $e = 5; $start = microtime(true); for ( $i=0; $i<1000000; $i++ ){ if ( $a == 1 && $b == 2 && $c == 3 && $d == 4 && $e == 5 ) {} } echo $time_elapsed_secs = microtime(true) - $start . " | "; $start = microtime(true); for ( $i=0; $i<1000000; $i++ ){ if ( $a == 1 ){ if ( $b == 2 ) { if ( $c == 3 ) { if ( $d == 4 ) { if ( $e == 5 ) {} } } } } } echo $time_elapsed_secs = microtime(true) - $start;
Finding entry points
Branch analysis from position: 0
1 jumps found. (Code = 42) Position 1 = 26
Branch analysis from position: 26
2 jumps found. (Code = 44) Position 1 = 28, Position 2 = 11
Branch analysis from position: 28
1 jumps found. (Code = 42) Position 1 = 52
Branch analysis from position: 52
2 jumps found. (Code = 44) Position 1 = 54, Position 2 = 41
Branch analysis from position: 54
1 jumps found. (Code = 62) Position 1 = -2
Branch analysis from position: 41
2 jumps found. (Code = 43) Position 1 = 43, Position 2 = 51
Branch analysis from position: 43
2 jumps found. (Code = 43) Position 1 = 45, Position 2 = 51
Branch analysis from position: 45
2 jumps found. (Code = 43) Position 1 = 47, Position 2 = 51
Branch analysis from position: 47
2 jumps found. (Code = 43) Position 1 = 49, Position 2 = 51
Branch analysis from position: 49
2 jumps found. (Code = 43) Position 1 = 51, Position 2 = 51
Branch analysis from position: 51
2 jumps found. (Code = 44) Position 1 = 54, Position 2 = 41
Branch analysis from position: 54
Branch analysis from position: 41
Branch analysis from position: 51
Branch analysis from position: 51
Branch analysis from position: 51
Branch analysis from position: 51
Branch analysis from position: 51
Branch analysis from position: 11
2 jumps found. (Code = 46) Position 1 = 13, Position 2 = 15
Branch analysis from position: 13
2 jumps found. (Code = 46) Position 1 = 16, Position 2 = 18
Branch analysis from position: 16
2 jumps found. (Code = 46) Position 1 = 19, Position 2 = 21
Branch analysis from position: 19
2 jumps found. (Code = 46) Position 1 = 22, Position 2 = 24
Branch analysis from position: 22
2 jumps found. (Code = 43) Position 1 = 25, Position 2 = 25
Branch analysis from position: 25
2 jumps found. (Code = 44) Position 1 = 28, Position 2 = 11
Branch analysis from position: 28
Branch analysis from position: 11
Branch analysis from position: 25
Branch analysis from position: 24
Branch analysis from position: 21
Branch analysis from position: 18
Branch analysis from position: 15
filename:       /in/cVT6u
function name:  (null)
number of ops:  61
compiled vars:  !0 = $a, !1 = $b, !2 = $c, !3 = $d, !4 = $e, !5 = $start, !6 = $i, !7 = $time_elapsed_secs
line      #* E I O op                           fetch          ext  return  operands
-------------------------------------------------------------------------------------
    3     0  E >   ASSIGN                                                   !0, 1
    4     1        ASSIGN                                                   !1, 2
    5     2        ASSIGN                                                   !2, 3
    6     3        ASSIGN                                                   !3, 4
    7     4        ASSIGN                                                   !4, 5
    9     5        INIT_FCALL                                               'microtime'
          6        SEND_VAL                                                 <true>
          7        DO_ICALL                                         $13     
          8        ASSIGN                                                   !5, $13
   10     9        ASSIGN                                                   !6, 0
         10      > JMP                                                      ->26
   11    11    >   IS_EQUAL                                         ~16     !0, 1
         12      > JMPZ_EX                                          ~16     ~16, ->15
         13    >   IS_EQUAL                                         ~17     !1, 2
         14        BOOL                                             ~16     ~17
         15    > > JMPZ_EX                                          ~16     ~16, ->18
         16    >   IS_EQUAL                                         ~18     !2, 3
         17        BOOL                                             ~16     ~18
         18    > > JMPZ_EX                                          ~16     ~16, ->21
         19    >   IS_EQUAL                                         ~19     !3, 4
         20        BOOL                                             ~16     ~19
         21    > > JMPZ_EX                                          ~16     ~16, ->24
         22    >   IS_EQUAL                                         ~20     !4, 5
         23        BOOL                                             ~16     ~20
         24    > > JMPZ                                                     ~16, ->25
   10    25    >   PRE_INC                                                  !6
         26    >   IS_SMALLER                                               !6, 1000000
         27      > JMPNZ                                                    ~22, ->11
   13    28    >   INIT_FCALL                                               'microtime'
         29        SEND_VAL                                                 <true>
         30        DO_ICALL                                         $23     
         31        SUB                                              ~24     $23, !5
         32        CONCAT                                           ~25     ~24, '+%7C+'
         33        ASSIGN                                           ~26     !7, ~25
         34        ECHO                                                     ~26
   15    35        INIT_FCALL                                               'microtime'
         36        SEND_VAL                                                 <true>
         37        DO_ICALL                                         $27     
         38        ASSIGN                                                   !5, $27
   16    39        ASSIGN                                                   !6, 0
         40      > JMP                                                      ->52
   17    41    >   IS_EQUAL                                                 !0, 1
         42      > JMPZ                                                     ~30, ->51
   18    43    >   IS_EQUAL                                                 !1, 2
         44      > JMPZ                                                     ~31, ->51
   19    45    >   IS_EQUAL                                                 !2, 3
         46      > JMPZ                                                     ~32, ->51
   20    47    >   IS_EQUAL                                                 !3, 4
         48      > JMPZ                                                     ~33, ->51
   21    49    >   IS_EQUAL                                                 !4, 5
         50      > JMPZ                                                     ~34, ->51
   16    51    >   PRE_INC                                                  !6
         52    >   IS_SMALLER                                               !6, 1000000
         53      > JMPNZ                                                    ~36, ->41
   27    54    >   INIT_FCALL                                               'microtime'
         55        SEND_VAL                                                 <true>
         56        DO_ICALL                                         $37     
         57        SUB                                              ~38     $37, !5
         58        ASSIGN                                           ~39     !7, ~38
         59        ECHO                                                     ~39
         60      > RETURN                                                   1

Generated using Vulcan Logic Dumper, using php 8.0.0


preferences:
136.35 ms | 1002 KiB | 14 Q