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_none'])) var_dump('None is set.'); if (!empty($test['eval_none'])) echo 'None is not empty.\n'; if (isset($test['eval_zero'])) echo 'Zero is set.<br>'; if (!empty($test['eval_zero'])) echo 'Zero is not empty.<br>'; if (isset($test['eval_null'])) echo 'NULL is set.<br>'; if (!empty($test['eval_null'])) echo 'NULL is not empty.<br>'; if (isset($test['eval_false'])) echo 'False is set.<br>'; if (!empty($test['eval_false'])) echo 'False is not empty.<br>'; if (isset($test['eval_true'])) echo 'True is set.<br>'; if (!empty($test['eval_true'])) echo 'True is not empty.<br>';
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 = 20
Branch analysis from position: 19
2 jumps found. (Code = 43) Position 1 = 22, Position 2 = 23
Branch analysis from position: 22
2 jumps found. (Code = 43) Position 1 = 26, Position 2 = 27
Branch analysis from position: 26
2 jumps found. (Code = 43) Position 1 = 29, Position 2 = 30
Branch analysis from position: 29
2 jumps found. (Code = 43) Position 1 = 33, Position 2 = 34
Branch analysis from position: 33
2 jumps found. (Code = 43) Position 1 = 36, Position 2 = 37
Branch analysis from position: 36
2 jumps found. (Code = 43) Position 1 = 40, Position 2 = 41
Branch analysis from position: 40
2 jumps found. (Code = 43) Position 1 = 43, Position 2 = 44
Branch analysis from position: 43
2 jumps found. (Code = 43) Position 1 = 47, Position 2 = 48
Branch analysis from position: 47
1 jumps found. (Code = 62) Position 1 = -2
Branch analysis from position: 48
Branch analysis from position: 44
Branch analysis from position: 41
Branch analysis from position: 37
Branch analysis from position: 34
Branch analysis from position: 30
Branch analysis from position: 27
Branch analysis from position: 23
Branch analysis from position: 20
Branch analysis from position: 16
filename:       /in/ZbN1P
function name:  (null)
number of ops:  49
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_none'
         12      > JMPZ                                                     ~7, ->16
         13    >   INIT_FCALL                                               'var_dump'
         14        SEND_VAL                                                 'None+is+set.'
         15        DO_ICALL                                                 
   11    16    >   ISSET_ISEMPTY_DIM_OBJ                         1  ~9      !0, 'eval_none'
         17        BOOL_NOT                                         ~10     ~9
         18      > JMPZ                                                     ~10, ->20
         19    >   ECHO                                                     'None+is+not+empty.%5Cn'
   13    20    >   ISSET_ISEMPTY_DIM_OBJ                         0          !0, 'eval_zero'
         21      > JMPZ                                                     ~11, ->23
         22    >   ECHO                                                     'Zero+is+set.%3Cbr%3E'
   14    23    >   ISSET_ISEMPTY_DIM_OBJ                         1  ~12     !0, 'eval_zero'
         24        BOOL_NOT                                         ~13     ~12
         25      > JMPZ                                                     ~13, ->27
         26    >   ECHO                                                     'Zero+is+not+empty.%3Cbr%3E'
   16    27    >   ISSET_ISEMPTY_DIM_OBJ                         0          !0, 'eval_null'
         28      > JMPZ                                                     ~14, ->30
         29    >   ECHO                                                     'NULL+is+set.%3Cbr%3E'
   17    30    >   ISSET_ISEMPTY_DIM_OBJ                         1  ~15     !0, 'eval_null'
         31        BOOL_NOT                                         ~16     ~15
         32      > JMPZ                                                     ~16, ->34
         33    >   ECHO                                                     'NULL+is+not+empty.%3Cbr%3E'
   19    34    >   ISSET_ISEMPTY_DIM_OBJ                         0          !0, 'eval_false'
         35      > JMPZ                                                     ~17, ->37
         36    >   ECHO                                                     'False+is+set.%3Cbr%3E'
   20    37    >   ISSET_ISEMPTY_DIM_OBJ                         1  ~18     !0, 'eval_false'
         38        BOOL_NOT                                         ~19     ~18
         39      > JMPZ                                                     ~19, ->41
         40    >   ECHO                                                     'False+is+not+empty.%3Cbr%3E'
   22    41    >   ISSET_ISEMPTY_DIM_OBJ                         0          !0, 'eval_true'
         42      > JMPZ                                                     ~20, ->44
         43    >   ECHO                                                     'True+is+set.%3Cbr%3E'
   23    44    >   ISSET_ISEMPTY_DIM_OBJ                         1  ~21     !0, 'eval_true'
         45        BOOL_NOT                                         ~22     ~21
         46      > JMPZ                                                     ~22, ->48
         47    >   ECHO                                                     'True+is+not+empty.%3Cbr%3E'
         48    > > RETURN                                                   1

Generated using Vulcan Logic Dumper, using php 8.0.0


preferences:
149.36 ms | 1400 KiB | 15 Q