3v4l.org

run code in 300+ PHP versions simultaneously
<?php class Foo { public $field_home_thumbs; } $node = New Foo(); $node->field_home_thumbs = array(array('value' => array('field_home_description' => array(array('value' => 'foo'))))); echo $node->field_home_thumbs[0]['value']['field_home_description'][0]['value'], "\n"; $name = 'field_home_thumbs'; $flexifiledname = 'field_home_description'; echo str_repeat('=', 50), "\n"; $string_node = '$node->' . $name . '[0][value][' . $flexifiledname . '][0][value];'; echo $string_node, "\n"; echo eval("return $string_node"), "\n"; echo str_repeat('=', 50), "\n"; $string_node = '$node->' . $name . "[0]['value']['" . $flexifiledname . "'][0]['value'];"; echo $string_node, "\n"; echo eval("return $string_node"), "\n";
Finding entry points
Branch analysis from position: 0
1 jumps found. (Code = 62) Position 1 = -2
filename:       /in/SBqbA
function name:  (null)
number of ops:  52
compiled vars:  !0 = $node, !1 = $name, !2 = $flexifiledname, !3 = $string_node
line      #* E I O op                           fetch          ext  return  operands
-------------------------------------------------------------------------------------
    8     0  E >   NEW                                              $4      'Foo'
          1        DO_FCALL                                      0          
          2        ASSIGN                                                   !0, $4
    9     3        ASSIGN_OBJ                                               !0, 'field_home_thumbs'
          4        OP_DATA                                                  <array>
   10     5        FETCH_OBJ_R                                      ~8      !0, 'field_home_thumbs'
          6        FETCH_DIM_R                                      ~9      ~8, 0
          7        FETCH_DIM_R                                      ~10     ~9, 'value'
          8        FETCH_DIM_R                                      ~11     ~10, 'field_home_description'
          9        FETCH_DIM_R                                      ~12     ~11, 0
         10        FETCH_DIM_R                                      ~13     ~12, 'value'
         11        ECHO                                                     ~13
         12        ECHO                                                     '%0A'
   12    13        ASSIGN                                                   !1, 'field_home_thumbs'
   13    14        ASSIGN                                                   !2, 'field_home_description'
   15    15        INIT_FCALL                                               'str_repeat'
         16        SEND_VAL                                                 '%3D'
         17        SEND_VAL                                                 50
         18        DO_ICALL                                         $16     
         19        ECHO                                                     $16
         20        ECHO                                                     '%0A'
   16    21        CONCAT                                           ~17     '%24node-%3E', !1
         22        CONCAT                                           ~18     ~17, '%5B0%5D%5Bvalue%5D%5B'
         23        CONCAT                                           ~19     ~18, !2
         24        CONCAT                                           ~20     ~19, '%5D%5B0%5D%5Bvalue%5D%3B'
         25        ASSIGN                                                   !3, ~20
   17    26        ECHO                                                     !3
         27        ECHO                                                     '%0A'
   18    28        NOP                                                      
         29        FAST_CONCAT                                      ~22     'return+', !3
         30        INCLUDE_OR_EVAL                                  $23     ~22, EVAL
         31        ECHO                                                     $23
         32        ECHO                                                     '%0A'
   20    33        INIT_FCALL                                               'str_repeat'
         34        SEND_VAL                                                 '%3D'
         35        SEND_VAL                                                 50
         36        DO_ICALL                                         $24     
         37        ECHO                                                     $24
         38        ECHO                                                     '%0A'
   21    39        CONCAT                                           ~25     '%24node-%3E', !1
         40        CONCAT                                           ~26     ~25, '%5B0%5D%5B%27value%27%5D%5B%27'
         41        CONCAT                                           ~27     ~26, !2
         42        CONCAT                                           ~28     ~27, '%27%5D%5B0%5D%5B%27value%27%5D%3B'
         43        ASSIGN                                                   !3, ~28
   22    44        ECHO                                                     !3
         45        ECHO                                                     '%0A'
   23    46        NOP                                                      
         47        FAST_CONCAT                                      ~30     'return+', !3
         48        INCLUDE_OR_EVAL                                  $31     ~30, EVAL
         49        ECHO                                                     $31
         50        ECHO                                                     '%0A'
         51      > RETURN                                                   1

Class Foo: [no user functions]

Generated using Vulcan Logic Dumper, using php 8.0.0


preferences:
160.9 ms | 1392 KiB | 15 Q