3v4l.org

run code in 300+ PHP versions simultaneously
<?php //$var = 'A'; $var = ''; //$var = null; //$var = 0; if (! isset($var) || $var) { echo "set default"; //"not empty or not defiend or a null value"; } else { echo "not default"; //"empty"; } if (isset($var) && empty($var)) { echo "set default"; } else { echo "not default"; }
Finding entry points
Branch analysis from position: 0
2 jumps found. (Code = 47) Position 1 = 4, Position 2 = 5
Branch analysis from position: 4
2 jumps found. (Code = 43) Position 1 = 6, Position 2 = 8
Branch analysis from position: 6
1 jumps found. (Code = 42) Position 1 = 9
Branch analysis from position: 9
2 jumps found. (Code = 46) Position 1 = 11, Position 2 = 13
Branch analysis from position: 11
2 jumps found. (Code = 43) Position 1 = 14, Position 2 = 16
Branch analysis from position: 14
1 jumps found. (Code = 42) Position 1 = 17
Branch analysis from position: 17
1 jumps found. (Code = 62) Position 1 = -2
Branch analysis from position: 16
1 jumps found. (Code = 62) Position 1 = -2
Branch analysis from position: 13
Branch analysis from position: 8
2 jumps found. (Code = 46) Position 1 = 11, Position 2 = 13
Branch analysis from position: 11
Branch analysis from position: 13
Branch analysis from position: 5
filename:       /in/on5Ui
function name:  (null)
number of ops:  18
compiled vars:  !0 = $var
line      #* E I O op                           fetch          ext  return  operands
-------------------------------------------------------------------------------------
    3     0  E >   ASSIGN                                                   !0, ''
    7     1        ISSET_ISEMPTY_CV                                 ~2      !0
          2        BOOL_NOT                                         ~3      ~2
          3      > JMPNZ_EX                                         ~3      ~3, ->5
          4    >   BOOL                                             ~3      !0
          5    > > JMPZ                                                     ~3, ->8
    8     6    >   ECHO                                                     'set+default'
          7      > JMP                                                      ->9
   10     8    >   ECHO                                                     'not+default'
   13     9    >   ISSET_ISEMPTY_CV                                 ~4      !0
         10      > JMPZ_EX                                          ~4      ~4, ->13
         11    >   ISSET_ISEMPTY_CV                                 ~5      !0
         12        BOOL                                             ~4      ~5
         13    > > JMPZ                                                     ~4, ->16
   14    14    >   ECHO                                                     'set+default'
         15      > JMP                                                      ->17
   16    16    >   ECHO                                                     'not+default'
   17    17    > > RETURN                                                   1

Generated using Vulcan Logic Dumper, using php 8.0.0


preferences:
162.21 ms | 1394 KiB | 13 Q