3v4l.org

run code in 300+ PHP versions simultaneously
<?php error_reporting( E_ALL ); $in = array(); $foo = 'f1'; $bar = 'b1'; if ( ! isset( $in[$foo][$bar] ) ) { $in[$foo][$bar] = array(); } print_r( $in ); $ob = new stdClass(); if ( ! isset( $ob->$foo->$bar ) ) { $ob->$foo->$bar = array(); } print_r( $ob );
Finding entry points
Branch analysis from position: 0
2 jumps found. (Code = 43) Position 1 = 10, Position 2 = 13
Branch analysis from position: 10
2 jumps found. (Code = 43) Position 1 = 23, Position 2 = 26
Branch analysis from position: 23
1 jumps found. (Code = 62) Position 1 = -2
Branch analysis from position: 26
Branch analysis from position: 13
filename:       /in/g4uvN
function name:  (null)
number of ops:  30
compiled vars:  !0 = $in, !1 = $foo, !2 = $bar, !3 = $ob
line      #* E I O op                           fetch          ext  return  operands
-------------------------------------------------------------------------------------
    3     0  E >   INIT_FCALL                                               'error_reporting'
          1        SEND_VAL                                                 32767
          2        DO_ICALL                                                 
    5     3        ASSIGN                                                   !0, <array>
    6     4        ASSIGN                                                   !1, 'f1'
    7     5        ASSIGN                                                   !2, 'b1'
    8     6        FETCH_DIM_IS                                     ~8      !0, !1
          7        ISSET_ISEMPTY_DIM_OBJ                         0  ~9      ~8, !2
          8        BOOL_NOT                                         ~10     ~9
          9      > JMPZ                                                     ~10, ->13
    9    10    >   FETCH_DIM_W                                      $11     !0, !1
         11        ASSIGN_DIM                                               $11, !2
         12        OP_DATA                                                  <array>
   11    13    >   INIT_FCALL                                               'print_r'
         14        SEND_VAR                                                 !0
         15        DO_ICALL                                                 
   13    16        NEW                                              $14     'stdClass'
         17        DO_FCALL                                      0          
         18        ASSIGN                                                   !3, $14
   14    19        FETCH_OBJ_IS                                     ~17     !3, !1
         20        ISSET_ISEMPTY_PROP_OBJ                           ~18     ~17, !2
         21        BOOL_NOT                                         ~19     ~18
         22      > JMPZ                                                     ~19, ->26
   15    23    >   FETCH_OBJ_W                                      $20     !3, !1
         24        ASSIGN_OBJ                                               $20, !2
         25        OP_DATA                                                  <array>
   17    26    >   INIT_FCALL                                               'print_r'
         27        SEND_VAR                                                 !3
         28        DO_ICALL                                                 
         29      > RETURN                                                   1

Generated using Vulcan Logic Dumper, using php 8.0.0


preferences:
146.7 ms | 1396 KiB | 17 Q