3v4l.org

run code in 300+ PHP versions simultaneously
<?php $a = new stdClass(); $a->meta_data = array(); $a->meta_data[0] = new stdClass(); $a->meta_data[0]->id = "2113"; $a->meta_data[0]->key = "First Name"; $a->meta_data[0]->value = "Recipient First Name"; $a->meta_data[1] = new stdClass(); $a->meta_data[1]->id = "2114"; $a->meta_data[1]->key = "Last Name"; $a->meta_data[1]->value = "Recipient Last Name"; $a->meta_data[2] = new stdClass(); $a->meta_data[2]->id = "2115"; $a->meta_data[2]->key = "addressLine 1"; $a->meta_data[2]->value = "Recipient Address Line 1"; $a->meta_data[3] = new stdClass(); $a->meta_data[3]->id = "2116"; $a->meta_data[3]->key = "addressLine2"; $a->meta_data[3]->value = "Recipient Address Line 2"; $a->meta_data[4] = new stdClass(); $a->meta_data[4]->id = "2117"; $a->meta_data[4]->key = "City"; $a->meta_data[4]->value = "Recipient Town/City"; $a->meta_data[5] = new stdClass(); $a->meta_data[5]->id = "2118"; $a->meta_data[5]->key = "Region"; $a->meta_data[5]->value = "Recipient Region/County"; $a->meta_data[6] = new stdClass(); $a->meta_data[6]->id = "2119"; $a->meta_data[6]->key = "Country"; $a->meta_data[6]->value = "N/A"; $a->meta_data[7] = new stdClass(); $a->meta_data[7]->id = "2120"; $a->meta_data[7]->key = "Postcode"; $a->meta_data[7]->value = "Recipient Postcode"; $item_values = json_encode($a); $item_data_decode = json_decode($item_values, true); $meta_array = array_combine(array_column($item_data_decode['meta_data'], 'key'), $item_data_decode['meta_data']); var_dump($meta_array); if (!empty($meta_array['First Name'])) { $fName = $meta_array['First Name']['value']; } var_dump($fName);
Finding entry points
Branch analysis from position: 0
2 jumps found. (Code = 43) Position 1 = 167, Position 2 = 170
Branch analysis from position: 167
1 jumps found. (Code = 62) Position 1 = -2
Branch analysis from position: 170
filename:       /in/PLANr
function name:  (null)
number of ops:  174
compiled vars:  !0 = $a, !1 = $item_values, !2 = $item_data_decode, !3 = $meta_array, !4 = $fName
line      #* E I O op                           fetch          ext  return  operands
-------------------------------------------------------------------------------------
    2     0  E >   NEW                                              $5      'stdClass'
          1        DO_FCALL                                      0          
          2        ASSIGN                                                   !0, $5
    3     3        ASSIGN_OBJ                                               !0, 'meta_data'
          4        OP_DATA                                                  <array>
    4     5        NEW                                              $11     'stdClass'
          6        DO_FCALL                                      0          
          7        FETCH_OBJ_W                                      $9      !0, 'meta_data'
          8        ASSIGN_DIM                                               $9, 0
          9        OP_DATA                                                  $11
    5    10        FETCH_OBJ_W                                      $13     !0, 'meta_data'
         11        FETCH_DIM_W                                      $14     $13, 0
         12        ASSIGN_OBJ                                               $14, 'id'
         13        OP_DATA                                                  '2113'
    6    14        FETCH_OBJ_W                                      $16     !0, 'meta_data'
         15        FETCH_DIM_W                                      $17     $16, 0
         16        ASSIGN_OBJ                                               $17, 'key'
         17        OP_DATA                                                  'First+Name'
    7    18        FETCH_OBJ_W                                      $19     !0, 'meta_data'
         19        FETCH_DIM_W                                      $20     $19, 0
         20        ASSIGN_OBJ                                               $20, 'value'
         21        OP_DATA                                                  'Recipient+First+Name'
    8    22        NEW                                              $24     'stdClass'
         23        DO_FCALL                                      0          
         24        FETCH_OBJ_W                                      $22     !0, 'meta_data'
         25        ASSIGN_DIM                                               $22, 1
         26        OP_DATA                                                  $24
    9    27        FETCH_OBJ_W                                      $26     !0, 'meta_data'
         28        FETCH_DIM_W                                      $27     $26, 1
         29        ASSIGN_OBJ                                               $27, 'id'
         30        OP_DATA                                                  '2114'
   10    31        FETCH_OBJ_W                                      $29     !0, 'meta_data'
         32        FETCH_DIM_W                                      $30     $29, 1
         33        ASSIGN_OBJ                                               $30, 'key'
         34        OP_DATA                                                  'Last+Name'
   11    35        FETCH_OBJ_W                                      $32     !0, 'meta_data'
         36        FETCH_DIM_W                                      $33     $32, 1
         37        ASSIGN_OBJ                                               $33, 'value'
         38        OP_DATA                                                  'Recipient+Last+Name'
   12    39        NEW                                              $37     'stdClass'
         40        DO_FCALL                                      0          
         41        FETCH_OBJ_W                                      $35     !0, 'meta_data'
         42        ASSIGN_DIM                                               $35, 2
         43        OP_DATA                                                  $37
   13    44        FETCH_OBJ_W                                      $39     !0, 'meta_data'
         45        FETCH_DIM_W                                      $40     $39, 2
         46        ASSIGN_OBJ                                               $40, 'id'
         47        OP_DATA                                                  '2115'
   14    48        FETCH_OBJ_W                                      $42     !0, 'meta_data'
         49        FETCH_DIM_W                                      $43     $42, 2
         50        ASSIGN_OBJ                                               $43, 'key'
         51        OP_DATA                                                  'addressLine+1'
   15    52        FETCH_OBJ_W                                      $45     !0, 'meta_data'
         53        FETCH_DIM_W                                      $46     $45, 2
         54        ASSIGN_OBJ                                               $46, 'value'
         55        OP_DATA                                                  'Recipient+Address+Line+1'
   16    56        NEW                                              $50     'stdClass'
         57        DO_FCALL                                      0          
         58        FETCH_OBJ_W                                      $48     !0, 'meta_data'
         59        ASSIGN_DIM                                               $48, 3
         60        OP_DATA                                                  $50
   17    61        FETCH_OBJ_W                                      $52     !0, 'meta_data'
         62        FETCH_DIM_W                                      $53     $52, 3
         63        ASSIGN_OBJ                                               $53, 'id'
         64        OP_DATA                                                  '2116'
   18    65        FETCH_OBJ_W                                      $55     !0, 'meta_data'
         66        FETCH_DIM_W                                      $56     $55, 3
         67        ASSIGN_OBJ                                               $56, 'key'
         68        OP_DATA                                                  'addressLine2'
   19    69        FETCH_OBJ_W                                      $58     !0, 'meta_data'
         70        FETCH_DIM_W                                      $59     $58, 3
         71        ASSIGN_OBJ                                               $59, 'value'
         72        OP_DATA                                                  'Recipient+Address+Line+2'
   20    73        NEW                                              $63     'stdClass'
         74        DO_FCALL                                      0          
         75        FETCH_OBJ_W                                      $61     !0, 'meta_data'
         76        ASSIGN_DIM                                               $61, 4
         77        OP_DATA                                                  $63
   21    78        FETCH_OBJ_W                                      $65     !0, 'meta_data'
         79        FETCH_DIM_W                                      $66     $65, 4
         80        ASSIGN_OBJ                                               $66, 'id'
         81        OP_DATA                                                  '2117'
   22    82        FETCH_OBJ_W                                      $68     !0, 'meta_data'
         83        FETCH_DIM_W                                      $69     $68, 4
         84        ASSIGN_OBJ                                               $69, 'key'
         85        OP_DATA                                                  'City'
   23    86        FETCH_OBJ_W                                      $71     !0, 'meta_data'
         87        FETCH_DIM_W                                      $72     $71, 4
         88        ASSIGN_OBJ                                               $72, 'value'
         89        OP_DATA                                                  'Recipient+Town%2FCity'
   24    90        NEW                                              $76     'stdClass'
         91        DO_FCALL                                      0          
         92        FETCH_OBJ_W                                      $74     !0, 'meta_data'
         93        ASSIGN_DIM                                               $74, 5
         94        OP_DATA                                                  $76
   25    95        FETCH_OBJ_W                                      $78     !0, 'meta_data'
         96        FETCH_DIM_W                                      $79     $78, 5
         97        ASSIGN_OBJ                                               $79, 'id'
         98        OP_DATA                                                  '2118'
   26    99        FETCH_OBJ_W                                      $81     !0, 'meta_data'
        100        FETCH_DIM_W                                      $82     $81, 5
        101        ASSIGN_OBJ                                               $82, 'key'
        102        OP_DATA                                                  'Region'
   27   103        FETCH_OBJ_W                                      $84     !0, 'meta_data'
        104        FETCH_DIM_W                                      $85     $84, 5
        105        ASSIGN_OBJ                                               $85, 'value'
        106        OP_DATA                                                  'Recipient+Region%2FCounty'
   28   107        NEW                                              $89     'stdClass'
        108        DO_FCALL                                      0          
        109        FETCH_OBJ_W                                      $87     !0, 'meta_data'
        110        ASSIGN_DIM                                               $87, 6
        111        OP_DATA                                                  $89
   29   112        FETCH_OBJ_W                                      $91     !0, 'meta_data'
        113        FETCH_DIM_W                                      $92     $91, 6
        114        ASSIGN_OBJ                                               $92, 'id'
        115        OP_DATA                                                  '2119'
   30   116        FETCH_OBJ_W                                      $94     !0, 'meta_data'
        117        FETCH_DIM_W                                      $95     $94, 6
        118        ASSIGN_OBJ                                               $95, 'key'
        119        OP_DATA                                                  'Country'
   31   120        FETCH_OBJ_W                                      $97     !0, 'meta_data'
        121        FETCH_DIM_W                                      $98     $97, 6
        122        ASSIGN_OBJ                                               $98, 'value'
        123        OP_DATA                                                  'N%2FA'
   32   124        NEW                                              $102    'stdClass'
        125        DO_FCALL                                      0          
        126        FETCH_OBJ_W                                      $100    !0, 'meta_data'
        127        ASSIGN_DIM                                               $100, 7
        128        OP_DATA                                                  $102
   33   129        FETCH_OBJ_W                                      $104    !0, 'meta_data'
        130        FETCH_DIM_W                                      $105    $104, 7
        131        ASSIGN_OBJ                                               $105, 'id'
        132        OP_DATA                                                  '2120'
   34   133        FETCH_OBJ_W                                      $107    !0, 'meta_data'
        134        FETCH_DIM_W                                      $108    $107, 7
        135        ASSIGN_OBJ                                               $108, 'key'
        136        OP_DATA                                                  'Postcode'
   35   137        FETCH_OBJ_W                                      $110    !0, 'meta_data'
        138        FETCH_DIM_W                                      $111    $110, 7
        139        ASSIGN_OBJ                                               $111, 'value'
        140        OP_DATA                                                  'Recipient+Postcode'
   37   141        INIT_FCALL                                               'json_encode'
        142        SEND_VAR                                                 !0
        143        DO_ICALL                                         $113    
        144        ASSIGN                                                   !1, $113
   39   145        INIT_FCALL                                               'json_decode'
        146        SEND_VAR                                                 !1
        147        SEND_VAL                                                 <true>
        148        DO_ICALL                                         $115    
        149        ASSIGN                                                   !2, $115
   40   150        INIT_FCALL                                               'array_combine'
        151        INIT_FCALL                                               'array_column'
        152        FETCH_DIM_R                                      ~117    !2, 'meta_data'
        153        SEND_VAL                                                 ~117
        154        SEND_VAL                                                 'key'
        155        DO_ICALL                                         $118    
        156        SEND_VAR                                                 $118
        157        FETCH_DIM_R                                      ~119    !2, 'meta_data'
        158        SEND_VAL                                                 ~119
        159        DO_ICALL                                         $120    
        160        ASSIGN                                                   !3, $120
   41   161        INIT_FCALL                                               'var_dump'
        162        SEND_VAR                                                 !3
        163        DO_ICALL                                                 
   42   164        ISSET_ISEMPTY_DIM_OBJ                         1  ~123    !3, 'First+Name'
        165        BOOL_NOT                                         ~124    ~123
        166      > JMPZ                                                     ~124, ->170
   43   167    >   FETCH_DIM_R                                      ~125    !3, 'First+Name'
        168        FETCH_DIM_R                                      ~126    ~125, 'value'
        169        ASSIGN                                                   !4, ~126
   45   170    >   INIT_FCALL                                               'var_dump'
        171        SEND_VAR                                                 !4
        172        DO_ICALL                                                 
        173      > RETURN                                                   1

Generated using Vulcan Logic Dumper, using php 8.0.0


preferences:
179.11 ms | 1028 KiB | 18 Q