3v4l.org

run code in 300+ PHP versions simultaneously
<?php $test = array(); $test['eval_none'] = ''; $test['eval_zero'] = 0; $test['eval_null'] = null; $test['eval_false'] = false; $test['eval_true'] = true; if (isset($test['eval_nonexixtent'])) var_dump('Noneexistent is set.'); if (!empty($test['eval_nonexixtent'])) var_dump('Noneexistent is not empty.'); if (!isset($test['eval_nonexixtent'])) var_dump('Noneexistent is not set.'); if (empty($test['eval_nonexixtent'])) var_dump('Noneexistent is empty.'); if (isset($test['eval_none'])) var_dump('None is set.'); if (!empty($test['eval_none'])) var_dump('None is not empty.'); if (isset($test['eval_zero'])) var_dump('Zero is set.'); if (!empty($test['eval_zero'])) var_dump('Zero is not empty.'); if (isset($test['eval_null'])) var_dump('NULL is set.'); if (!empty($test['eval_null'])) var_dump('NULL is not empty.'); if (isset($test['eval_false'])) var_dump('False is set.'); if (!empty($test['eval_false'])) var_dump('False is not empty.'); if (isset($test['eval_true'])) var_dump('True is set.'); if (!empty($test['eval_true'])) var_dump('True is not empty.');
Finding entry points
Branch analysis from position: 0
2 jumps found. (Code = 43) Position 1 = 13, Position 2 = 16
Branch analysis from position: 13
2 jumps found. (Code = 43) Position 1 = 19, Position 2 = 22
Branch analysis from position: 19
2 jumps found. (Code = 43) Position 1 = 25, Position 2 = 28
Branch analysis from position: 25
2 jumps found. (Code = 43) Position 1 = 30, Position 2 = 33
Branch analysis from position: 30
2 jumps found. (Code = 43) Position 1 = 35, Position 2 = 38
Branch analysis from position: 35
2 jumps found. (Code = 43) Position 1 = 41, Position 2 = 44
Branch analysis from position: 41
2 jumps found. (Code = 43) Position 1 = 46, Position 2 = 49
Branch analysis from position: 46
2 jumps found. (Code = 43) Position 1 = 52, Position 2 = 55
Branch analysis from position: 52
2 jumps found. (Code = 43) Position 1 = 57, Position 2 = 60
Branch analysis from position: 57
2 jumps found. (Code = 43) Position 1 = 63, Position 2 = 66
Branch analysis from position: 63
2 jumps found. (Code = 43) Position 1 = 68, Position 2 = 71
Branch analysis from position: 68
2 jumps found. (Code = 43) Position 1 = 74, Position 2 = 77
Branch analysis from position: 74
2 jumps found. (Code = 43) Position 1 = 79, Position 2 = 82
Branch analysis from position: 79
2 jumps found. (Code = 43) Position 1 = 85, Position 2 = 88
Branch analysis from position: 85
1 jumps found. (Code = 62) Position 1 = -2
Branch analysis from position: 88
Branch analysis from position: 82
Branch analysis from position: 77
Branch analysis from position: 71
Branch analysis from position: 66
Branch analysis from position: 60
Branch analysis from position: 55
Branch analysis from position: 49
Branch analysis from position: 44
Branch analysis from position: 38
Branch analysis from position: 33
Branch analysis from position: 28
Branch analysis from position: 22
Branch analysis from position: 16
filename:       /in/B4894
function name:  (null)
number of ops:  89
compiled vars:  !0 = $test
line      #* E I O op                           fetch          ext  return  operands
-------------------------------------------------------------------------------------
    3     0  E >   ASSIGN                                                   !0, <array>
    4     1        ASSIGN_DIM                                               !0, 'eval_none'
          2        OP_DATA                                                  ''
    5     3        ASSIGN_DIM                                               !0, 'eval_zero'
          4        OP_DATA                                                  0
    6     5        ASSIGN_DIM                                               !0, 'eval_null'
          6        OP_DATA                                                  null
    7     7        ASSIGN_DIM                                               !0, 'eval_false'
          8        OP_DATA                                                  <false>
    8     9        ASSIGN_DIM                                               !0, 'eval_true'
         10        OP_DATA                                                  <true>
   10    11        ISSET_ISEMPTY_DIM_OBJ                         0          !0, 'eval_nonexixtent'
         12      > JMPZ                                                     ~7, ->16
         13    >   INIT_FCALL                                               'var_dump'
         14        SEND_VAL                                                 'Noneexistent+is+set.'
         15        DO_ICALL                                                 
   11    16    >   ISSET_ISEMPTY_DIM_OBJ                         1  ~9      !0, 'eval_nonexixtent'
         17        BOOL_NOT                                         ~10     ~9
         18      > JMPZ                                                     ~10, ->22
         19    >   INIT_FCALL                                               'var_dump'
         20        SEND_VAL                                                 'Noneexistent+is+not+empty.'
         21        DO_ICALL                                                 
   12    22    >   ISSET_ISEMPTY_DIM_OBJ                         0  ~12     !0, 'eval_nonexixtent'
         23        BOOL_NOT                                         ~13     ~12
         24      > JMPZ                                                     ~13, ->28
         25    >   INIT_FCALL                                               'var_dump'
         26        SEND_VAL                                                 'Noneexistent+is+not+set.'
         27        DO_ICALL                                                 
   13    28    >   ISSET_ISEMPTY_DIM_OBJ                         1          !0, 'eval_nonexixtent'
         29      > JMPZ                                                     ~15, ->33
         30    >   INIT_FCALL                                               'var_dump'
         31        SEND_VAL                                                 'Noneexistent+is+empty.'
         32        DO_ICALL                                                 
   15    33    >   ISSET_ISEMPTY_DIM_OBJ                         0          !0, 'eval_none'
         34      > JMPZ                                                     ~17, ->38
         35    >   INIT_FCALL                                               'var_dump'
         36        SEND_VAL                                                 'None+is+set.'
         37        DO_ICALL                                                 
   16    38    >   ISSET_ISEMPTY_DIM_OBJ                         1  ~19     !0, 'eval_none'
         39        BOOL_NOT                                         ~20     ~19
         40      > JMPZ                                                     ~20, ->44
         41    >   INIT_FCALL                                               'var_dump'
         42        SEND_VAL                                                 'None+is+not+empty.'
         43        DO_ICALL                                                 
   18    44    >   ISSET_ISEMPTY_DIM_OBJ                         0          !0, 'eval_zero'
         45      > JMPZ                                                     ~22, ->49
         46    >   INIT_FCALL                                               'var_dump'
         47        SEND_VAL                                                 'Zero+is+set.'
         48        DO_ICALL                                                 
   19    49    >   ISSET_ISEMPTY_DIM_OBJ                         1  ~24     !0, 'eval_zero'
         50        BOOL_NOT                                         ~25     ~24
         51      > JMPZ                                                     ~25, ->55
         52    >   INIT_FCALL                                               'var_dump'
         53        SEND_VAL                                                 'Zero+is+not+empty.'
         54        DO_ICALL                                                 
   21    55    >   ISSET_ISEMPTY_DIM_OBJ                         0          !0, 'eval_null'
         56      > JMPZ                                                     ~27, ->60
         57    >   INIT_FCALL                                               'var_dump'
         58        SEND_VAL                                                 'NULL+is+set.'
         59        DO_ICALL                                                 
   22    60    >   ISSET_ISEMPTY_DIM_OBJ                         1  ~29     !0, 'eval_null'
         61        BOOL_NOT                                         ~30     ~29
         62      > JMPZ                                                     ~30, ->66
         63    >   INIT_FCALL                                               'var_dump'
         64        SEND_VAL                                                 'NULL+is+not+empty.'
         65        DO_ICALL                                                 
   24    66    >   ISSET_ISEMPTY_DIM_OBJ                         0          !0, 'eval_false'
         67      > JMPZ                                                     ~32, ->71
         68    >   INIT_FCALL                                               'var_dump'
         69        SEND_VAL                                                 'False+is+set.'
         70        DO_ICALL                                                 
   25    71    >   ISSET_ISEMPTY_DIM_OBJ                         1  ~34     !0, 'eval_false'
         72        BOOL_NOT                                         ~35     ~34
         73      > JMPZ                                                     ~35, ->77
         74    >   INIT_FCALL                                               'var_dump'
         75        SEND_VAL                                                 'False+is+not+empty.'
         76        DO_ICALL                                                 
   27    77    >   ISSET_ISEMPTY_DIM_OBJ                         0          !0, 'eval_true'
         78      > JMPZ                                                     ~37, ->82
         79    >   INIT_FCALL                                               'var_dump'
         80        SEND_VAL                                                 'True+is+set.'
         81        DO_ICALL                                                 
   28    82    >   ISSET_ISEMPTY_DIM_OBJ                         1  ~39     !0, 'eval_true'
         83        BOOL_NOT                                         ~40     ~39
         84      > JMPZ                                                     ~40, ->88
         85    >   INIT_FCALL                                               'var_dump'
         86        SEND_VAL                                                 'True+is+not+empty.'
         87        DO_ICALL                                                 
         88    > > RETURN                                                   1

Generated using Vulcan Logic Dumper, using php 8.0.0


preferences:
149.73 ms | 1404 KiB | 15 Q