3v4l.org

run code in 300+ PHP versions simultaneously
<?php define('LANGUAGE_NONE', 'und'); $node = new stdClass(); $node->type = 'tv_show'; if ($node->type == 'tv_show' && !empty($node->field_show_type[LANGUAGE_NONE]) && !empty($node->field_show_type[LANGUAGE_NONE][0]['value'])) { echo "1st check: " . var_export($node->field_show_type[LANGUAGE_NONE][0]['value'], TRUE) . "\n"; } else { echo "1st check: field_show_type is empty\n"; } if ($node->type == 'tv_show' && !empty($node->field_show_type[LANGUAGE_NONE][0]['value'])) { echo "2nd check: " . var_export($node->field_show_type[LANGUAGE_NONE][0]['value'], TRUE) . "\n"; } else { echo "2nd check: field_show_type is empty\n"; } $node->field_show_type[LANGUAGE_NONE][0]['value'] = 'test'; if ($node->type == 'tv_show' && !empty($node->field_show_type[LANGUAGE_NONE]) && !empty($node->field_show_type[LANGUAGE_NONE][0]['value'])) { echo "1st check: " . var_export($node->field_show_type[LANGUAGE_NONE][0]['value'], TRUE) . "\n"; } else { echo "1st check: field_show_type is empty\n"; } if ($node->type == 'tv_show' && !empty($node->field_show_type[LANGUAGE_NONE][0]['value'])) { echo "2nd check: " . var_export($node->field_show_type[LANGUAGE_NONE][0]['value'], TRUE) . "\n"; } else { echo "2nd check: field_show_type is empty\n"; }
Finding entry points
Branch analysis from position: 0
2 jumps found. (Code = 46) Position 1 = 12, Position 2 = 17
Branch analysis from position: 12
2 jumps found. (Code = 46) Position 1 = 18, Position 2 = 25
Branch analysis from position: 18
2 jumps found. (Code = 43) Position 1 = 26, Position 2 = 39
Branch analysis from position: 26
1 jumps found. (Code = 42) Position 1 = 40
Branch analysis from position: 40
2 jumps found. (Code = 46) Position 1 = 43, Position 2 = 50
Branch analysis from position: 43
2 jumps found. (Code = 43) Position 1 = 51, Position 2 = 64
Branch analysis from position: 51
1 jumps found. (Code = 42) Position 1 = 65
Branch analysis from position: 65
2 jumps found. (Code = 46) Position 1 = 74, Position 2 = 79
Branch analysis from position: 74
2 jumps found. (Code = 46) Position 1 = 80, Position 2 = 87
Branch analysis from position: 80
2 jumps found. (Code = 43) Position 1 = 88, Position 2 = 101
Branch analysis from position: 88
1 jumps found. (Code = 42) Position 1 = 102
Branch analysis from position: 102
2 jumps found. (Code = 46) Position 1 = 105, Position 2 = 112
Branch analysis from position: 105
2 jumps found. (Code = 43) Position 1 = 113, Position 2 = 126
Branch analysis from position: 113
1 jumps found. (Code = 42) Position 1 = 127
Branch analysis from position: 127
1 jumps found. (Code = 62) Position 1 = -2
Branch analysis from position: 126
1 jumps found. (Code = 62) Position 1 = -2
Branch analysis from position: 112
Branch analysis from position: 101
2 jumps found. (Code = 46) Position 1 = 105, Position 2 = 112
Branch analysis from position: 105
Branch analysis from position: 112
Branch analysis from position: 87
Branch analysis from position: 79
Branch analysis from position: 64
2 jumps found. (Code = 46) Position 1 = 74, Position 2 = 79
Branch analysis from position: 74
Branch analysis from position: 79
Branch analysis from position: 50
Branch analysis from position: 39
2 jumps found. (Code = 46) Position 1 = 43, Position 2 = 50
Branch analysis from position: 43
Branch analysis from position: 50
Branch analysis from position: 25
Branch analysis from position: 17
filename:       /in/MPYqf
function name:  (null)
number of ops:  128
compiled vars:  !0 = $node
line      #* E I O op                           fetch          ext  return  operands
-------------------------------------------------------------------------------------
    3     0  E >   INIT_FCALL                                               'define'
          1        SEND_VAL                                                 'LANGUAGE_NONE'
          2        SEND_VAL                                                 'und'
          3        DO_ICALL                                                 
    4     4        NEW                                              $2      'stdClass'
          5        DO_FCALL                                      0          
          6        ASSIGN                                                   !0, $2
    5     7        ASSIGN_OBJ                                               !0, 'type'
          8        OP_DATA                                                  'tv_show'
    7     9        FETCH_OBJ_R                                      ~6      !0, 'type'
         10        IS_EQUAL                                         ~7      ~6, 'tv_show'
         11      > JMPZ_EX                                          ~7      ~7, ->17
         12    >   FETCH_CONSTANT                                   ~9      'LANGUAGE_NONE'
         13        FETCH_OBJ_IS                                     ~8      !0, 'field_show_type'
         14        ISSET_ISEMPTY_DIM_OBJ                         1  ~10     ~8, ~9
         15        BOOL_NOT                                         ~11     ~10
         16        BOOL                                             ~7      ~11
         17    > > JMPZ_EX                                          ~7      ~7, ->25
         18    >   FETCH_CONSTANT                                   ~13     'LANGUAGE_NONE'
         19        FETCH_OBJ_IS                                     ~12     !0, 'field_show_type'
         20        FETCH_DIM_IS                                     ~14     ~12, ~13
         21        FETCH_DIM_IS                                     ~15     ~14, 0
         22        ISSET_ISEMPTY_DIM_OBJ                         1  ~16     ~15, 'value'
         23        BOOL_NOT                                         ~17     ~16
         24        BOOL                                             ~7      ~17
         25    > > JMPZ                                                     ~7, ->39
    8    26    >   INIT_FCALL                                               'var_export'
         27        FETCH_CONSTANT                                   ~19     'LANGUAGE_NONE'
         28        FETCH_OBJ_R                                      ~18     !0, 'field_show_type'
         29        FETCH_DIM_R                                      ~20     ~18, ~19
         30        FETCH_DIM_R                                      ~21     ~20, 0
         31        FETCH_DIM_R                                      ~22     ~21, 'value'
         32        SEND_VAL                                                 ~22
         33        SEND_VAL                                                 <true>
         34        DO_ICALL                                         $23     
         35        CONCAT                                           ~24     '1st+check%3A+', $23
         36        CONCAT                                           ~25     ~24, '%0A'
         37        ECHO                                                     ~25
         38      > JMP                                                      ->40
   11    39    >   ECHO                                                     '1st+check%3A+field_show_type+is+empty%0A'
   14    40    >   FETCH_OBJ_R                                      ~26     !0, 'type'
         41        IS_EQUAL                                         ~27     ~26, 'tv_show'
         42      > JMPZ_EX                                          ~27     ~27, ->50
         43    >   FETCH_CONSTANT                                   ~29     'LANGUAGE_NONE'
         44        FETCH_OBJ_IS                                     ~28     !0, 'field_show_type'
         45        FETCH_DIM_IS                                     ~30     ~28, ~29
         46        FETCH_DIM_IS                                     ~31     ~30, 0
         47        ISSET_ISEMPTY_DIM_OBJ                         1  ~32     ~31, 'value'
         48        BOOL_NOT                                         ~33     ~32
         49        BOOL                                             ~27     ~33
         50    > > JMPZ                                                     ~27, ->64
   15    51    >   INIT_FCALL                                               'var_export'
         52        FETCH_CONSTANT                                   ~35     'LANGUAGE_NONE'
         53        FETCH_OBJ_R                                      ~34     !0, 'field_show_type'
         54        FETCH_DIM_R                                      ~36     ~34, ~35
         55        FETCH_DIM_R                                      ~37     ~36, 0
         56        FETCH_DIM_R                                      ~38     ~37, 'value'
         57        SEND_VAL                                                 ~38
         58        SEND_VAL                                                 <true>
         59        DO_ICALL                                         $39     
         60        CONCAT                                           ~40     '2nd+check%3A+', $39
         61        CONCAT                                           ~41     ~40, '%0A'
         62        ECHO                                                     ~41
         63      > JMP                                                      ->65
   18    64    >   ECHO                                                     '2nd+check%3A+field_show_type+is+empty%0A'
   21    65    >   FETCH_CONSTANT                                   ~43     'LANGUAGE_NONE'
         66        FETCH_OBJ_W                                      $42     !0, 'field_show_type'
         67        FETCH_DIM_W                                      $44     $42, ~43
         68        FETCH_DIM_W                                      $45     $44, 0
         69        ASSIGN_DIM                                               $45, 'value'
         70        OP_DATA                                                  'test'
   23    71        FETCH_OBJ_R                                      ~47     !0, 'type'
         72        IS_EQUAL                                         ~48     ~47, 'tv_show'
         73      > JMPZ_EX                                          ~48     ~48, ->79
         74    >   FETCH_CONSTANT                                   ~50     'LANGUAGE_NONE'
         75        FETCH_OBJ_IS                                     ~49     !0, 'field_show_type'
         76        ISSET_ISEMPTY_DIM_OBJ                         1  ~51     ~49, ~50
         77        BOOL_NOT                                         ~52     ~51
         78        BOOL                                             ~48     ~52
         79    > > JMPZ_EX                                          ~48     ~48, ->87
         80    >   FETCH_CONSTANT                                   ~54     'LANGUAGE_NONE'
         81        FETCH_OBJ_IS                                     ~53     !0, 'field_show_type'
         82        FETCH_DIM_IS                                     ~55     ~53, ~54
         83        FETCH_DIM_IS                                     ~56     ~55, 0
         84        ISSET_ISEMPTY_DIM_OBJ                         1  ~57     ~56, 'value'
         85        BOOL_NOT                                         ~58     ~57
         86        BOOL                                             ~48     ~58
         87    > > JMPZ                                                     ~48, ->101
   24    88    >   INIT_FCALL                                               'var_export'
         89        FETCH_CONSTANT                                   ~60     'LANGUAGE_NONE'
         90        FETCH_OBJ_R                                      ~59     !0, 'field_show_type'
         91        FETCH_DIM_R                                      ~61     ~59, ~60
         92        FETCH_DIM_R                                      ~62     ~61, 0
         93        FETCH_DIM_R                                      ~63     ~62, 'value'
         94        SEND_VAL                                                 ~63
         95        SEND_VAL                                                 <true>
         96        DO_ICALL                                         $64     
         97        CONCAT                                           ~65     '1st+check%3A+', $64
         98        CONCAT                                           ~66     ~65, '%0A'
         99        ECHO                                                     ~66
        100      > JMP                                                      ->102
   27   101    >   ECHO                                                     '1st+check%3A+field_show_type+is+empty%0A'
   30   102    >   FETCH_OBJ_R                                      ~67     !0, 'type'
        103        IS_EQUAL                                         ~68     ~67, 'tv_show'
        104      > JMPZ_EX                                          ~68     ~68, ->112
        105    >   FETCH_CONSTANT                                   ~70     'LANGUAGE_NONE'
        106        FETCH_OBJ_IS                                     ~69     !0, 'field_show_type'
        107        FETCH_DIM_IS                                     ~71     ~69, ~70
        108        FETCH_DIM_IS                                     ~72     ~71, 0
        109        ISSET_ISEMPTY_DIM_OBJ                         1  ~73     ~72, 'value'
        110        BOOL_NOT                                         ~74     ~73
        111        BOOL                                             ~68     ~74
        112    > > JMPZ                                                     ~68, ->126
   31   113    >   INIT_FCALL                                               'var_export'
        114        FETCH_CONSTANT                                   ~76     'LANGUAGE_NONE'
        115        FETCH_OBJ_R                                      ~75     !0, 'field_show_type'
        116        FETCH_DIM_R                                      ~77     ~75, ~76
        117        FETCH_DIM_R                                      ~78     ~77, 0
        118        FETCH_DIM_R                                      ~79     ~78, 'value'
        119        SEND_VAL                                                 ~79
        120        SEND_VAL                                                 <true>
        121        DO_ICALL                                         $80     
        122        CONCAT                                           ~81     '2nd+check%3A+', $80
        123        CONCAT                                           ~82     ~81, '%0A'
        124        ECHO                                                     ~82
        125      > JMP                                                      ->127
   34   126    >   ECHO                                                     '2nd+check%3A+field_show_type+is+empty%0A'
   35   127    > > RETURN                                                   1

Generated using Vulcan Logic Dumper, using php 8.0.0


preferences:
152.74 ms | 1413 KiB | 17 Q