3v4l.org

run code in 300+ PHP versions simultaneously
<?php $array = array(new stdClass, new stdClass, new stdClass); for ($i = 0; $i < 3; $i++) { for ($j = 0; $j <= $i; $j++) { $x = $array[$i]; $y = $array[$j]; if ($x < $y) print("$i<$j "); if ($x > $y) print("$i>$j "); if ($x == $y) print("$i===$j "); print(" "); } print("\n"); } var_dump(array_udiff()); print("\n"); $array[0]->a = 10; $array[1]->a = 30; $array[2]->a = 20; for ($i = 0; $i < 3; $i++) { for ($j = 0; $j <= $i; $j++) { $x = $array[$i]; $y = $array[$j]; if ($x < $y) print("$i<$j "); if ($x > $y) print("$i>$j "); if ($x == $y) print("$i===$j "); print(" "); } print("\n"); }
Finding entry points
Branch analysis from position: 0
1 jumps found. (Code = 42) Position 1 = 45
Branch analysis from position: 45
2 jumps found. (Code = 44) Position 1 = 47, Position 2 = 12
Branch analysis from position: 47
1 jumps found. (Code = 42) Position 1 = 97
Branch analysis from position: 97
2 jumps found. (Code = 44) Position 1 = 99, Position 2 = 64
Branch analysis from position: 99
1 jumps found. (Code = 62) Position 1 = -2
Branch analysis from position: 64
1 jumps found. (Code = 42) Position 1 = 93
Branch analysis from position: 93
2 jumps found. (Code = 44) Position 1 = 95, Position 2 = 66
Branch analysis from position: 95
2 jumps found. (Code = 44) Position 1 = 99, Position 2 = 64
Branch analysis from position: 99
Branch analysis from position: 64
Branch analysis from position: 66
2 jumps found. (Code = 43) Position 1 = 72, Position 2 = 77
Branch analysis from position: 72
2 jumps found. (Code = 43) Position 1 = 79, Position 2 = 84
Branch analysis from position: 79
2 jumps found. (Code = 43) Position 1 = 86, Position 2 = 91
Branch analysis from position: 86
2 jumps found. (Code = 44) Position 1 = 95, Position 2 = 66
Branch analysis from position: 95
Branch analysis from position: 66
Branch analysis from position: 91
Branch analysis from position: 84
Branch analysis from position: 77
Branch analysis from position: 12
1 jumps found. (Code = 42) Position 1 = 41
Branch analysis from position: 41
2 jumps found. (Code = 44) Position 1 = 43, Position 2 = 14
Branch analysis from position: 43
2 jumps found. (Code = 44) Position 1 = 47, Position 2 = 12
Branch analysis from position: 47
Branch analysis from position: 12
Branch analysis from position: 14
2 jumps found. (Code = 43) Position 1 = 20, Position 2 = 25
Branch analysis from position: 20
2 jumps found. (Code = 43) Position 1 = 27, Position 2 = 32
Branch analysis from position: 27
2 jumps found. (Code = 43) Position 1 = 34, Position 2 = 39
Branch analysis from position: 34
2 jumps found. (Code = 44) Position 1 = 43, Position 2 = 14
Branch analysis from position: 43
Branch analysis from position: 14
Branch analysis from position: 39
Branch analysis from position: 32
Branch analysis from position: 25
filename:       /in/cLsCF
function name:  (null)
number of ops:  100
compiled vars:  !0 = $array, !1 = $i, !2 = $j, !3 = $x, !4 = $y
line      #* E I O op                           fetch          ext  return  operands
-------------------------------------------------------------------------------------
    3     0  E >   NEW                                              $5      'stdClass'
          1        DO_FCALL                                      0          
          2        INIT_ARRAY                                       ~7      $5
          3        NEW                                              $8      'stdClass'
          4        DO_FCALL                                      0          
          5        ADD_ARRAY_ELEMENT                                ~7      $8
          6        NEW                                              $10     'stdClass'
          7        DO_FCALL                                      0          
          8        ADD_ARRAY_ELEMENT                                ~7      $10
          9        ASSIGN                                                   !0, ~7
    5    10        ASSIGN                                                   !1, 0
         11      > JMP                                                      ->45
    6    12    >   ASSIGN                                                   !2, 0
         13      > JMP                                                      ->41
    7    14    >   FETCH_DIM_R                                      ~15     !0, !1
         15        ASSIGN                                                   !3, ~15
    8    16        FETCH_DIM_R                                      ~17     !0, !2
         17        ASSIGN                                                   !4, ~17
    9    18        IS_SMALLER                                               !3, !4
         19      > JMPZ                                                     ~19, ->25
         20    >   ROPE_INIT                                     4  ~21     !1
         21        ROPE_ADD                                      1  ~21     ~21, '%3C'
         22        ROPE_ADD                                      2  ~21     ~21, !2
         23        ROPE_END                                      3  ~20     ~21, '+'
         24        ECHO                                                     ~20
   10    25    >   IS_SMALLER                                               !4, !3
         26      > JMPZ                                                     ~23, ->32
         27    >   ROPE_INIT                                     4  ~25     !1
         28        ROPE_ADD                                      1  ~25     ~25, '%3E'
         29        ROPE_ADD                                      2  ~25     ~25, !2
         30        ROPE_END                                      3  ~24     ~25, '+'
         31        ECHO                                                     ~24
   11    32    >   IS_EQUAL                                                 !3, !4
         33      > JMPZ                                                     ~27, ->39
         34    >   ROPE_INIT                                     4  ~29     !1
         35        ROPE_ADD                                      1  ~29     ~29, '%3D%3D%3D'
         36        ROPE_ADD                                      2  ~29     ~29, !2
         37        ROPE_END                                      3  ~28     ~29, '+'
         38        ECHO                                                     ~28
   12    39    >   ECHO                                                     '++++++'
    6    40        PRE_INC                                                  !2
         41    >   IS_SMALLER_OR_EQUAL                                      !2, !1
         42      > JMPNZ                                                    ~32, ->14
   14    43    >   ECHO                                                     '%0A'
    5    44        PRE_INC                                                  !1
         45    >   IS_SMALLER                                               !1, 3
         46      > JMPNZ                                                    ~34, ->12
   17    47    >   INIT_FCALL                                               'var_dump'
         48        INIT_FCALL                                               'array_udiff'
         49        DO_ICALL                                         $35     
         50        SEND_VAR                                                 $35
         51        DO_ICALL                                                 
   19    52        ECHO                                                     '%0A'
   21    53        FETCH_DIM_W                                      $37     !0, 0
         54        ASSIGN_OBJ                                               $37, 'a'
         55        OP_DATA                                                  10
   22    56        FETCH_DIM_W                                      $39     !0, 1
         57        ASSIGN_OBJ                                               $39, 'a'
         58        OP_DATA                                                  30
   23    59        FETCH_DIM_W                                      $41     !0, 2
         60        ASSIGN_OBJ                                               $41, 'a'
         61        OP_DATA                                                  20
   25    62        ASSIGN                                                   !1, 0
         63      > JMP                                                      ->97
   26    64    >   ASSIGN                                                   !2, 0
         65      > JMP                                                      ->93
   27    66    >   FETCH_DIM_R                                      ~45     !0, !1
         67        ASSIGN                                                   !3, ~45
   28    68        FETCH_DIM_R                                      ~47     !0, !2
         69        ASSIGN                                                   !4, ~47
   29    70        IS_SMALLER                                               !3, !4
         71      > JMPZ                                                     ~49, ->77
         72    >   ROPE_INIT                                     4  ~51     !1
         73        ROPE_ADD                                      1  ~51     ~51, '%3C'
         74        ROPE_ADD                                      2  ~51     ~51, !2
         75        ROPE_END                                      3  ~50     ~51, '+'
         76        ECHO                                                     ~50
   30    77    >   IS_SMALLER                                               !4, !3
         78      > JMPZ                                                     ~53, ->84
         79    >   ROPE_INIT                                     4  ~55     !1
         80        ROPE_ADD                                      1  ~55     ~55, '%3E'
         81        ROPE_ADD                                      2  ~55     ~55, !2
         82        ROPE_END                                      3  ~54     ~55, '+'
         83        ECHO                                                     ~54
   31    84    >   IS_EQUAL                                                 !3, !4
         85      > JMPZ                                                     ~57, ->91
         86    >   ROPE_INIT                                     4  ~59     !1
         87        ROPE_ADD                                      1  ~59     ~59, '%3D%3D%3D'
         88        ROPE_ADD                                      2  ~59     ~59, !2
         89        ROPE_END                                      3  ~58     ~59, '+'
         90        ECHO                                                     ~58
   32    91    >   ECHO                                                     '++++++'
   26    92        PRE_INC                                                  !2
         93    >   IS_SMALLER_OR_EQUAL                                      !2, !1
         94      > JMPNZ                                                    ~62, ->66
   34    95    >   ECHO                                                     '%0A'
   25    96        PRE_INC                                                  !1
         97    >   IS_SMALLER                                               !1, 3
         98      > JMPNZ                                                    ~64, ->64
   35    99    > > RETURN                                                   1

Generated using Vulcan Logic Dumper, using php 8.0.0


preferences:
176.8 ms | 1408 KiB | 17 Q