3v4l.org

run code in 300+ PHP versions simultaneously
<?php $primary = 0; echo ($primary || $primary === "0" || $primary === 0) ? 1 : 0; echo "\n\r"; $primary = "0"; echo ($primary || $primary === "0" || $primary === 0) ? 1 : 0; echo "\n\r"; $primary = NULL; echo ($primary || $primary === "0" || $primary === 0) ? 1 : 0; echo "\n\r"; $primary = ''; echo ($primary || $primary === "0" || $primary === 0) ? 1 : 0; echo "\n\r";
Finding entry points
Branch analysis from position: 0
2 jumps found. (Code = 47) Position 1 = 2, Position 2 = 4
Branch analysis from position: 2
2 jumps found. (Code = 47) Position 1 = 5, Position 2 = 7
Branch analysis from position: 5
2 jumps found. (Code = 43) Position 1 = 8, Position 2 = 10
Branch analysis from position: 8
1 jumps found. (Code = 42) Position 1 = 11
Branch analysis from position: 11
2 jumps found. (Code = 47) Position 1 = 15, Position 2 = 17
Branch analysis from position: 15
2 jumps found. (Code = 47) Position 1 = 18, Position 2 = 20
Branch analysis from position: 18
2 jumps found. (Code = 43) Position 1 = 21, Position 2 = 23
Branch analysis from position: 21
1 jumps found. (Code = 42) Position 1 = 24
Branch analysis from position: 24
2 jumps found. (Code = 47) Position 1 = 28, Position 2 = 30
Branch analysis from position: 28
2 jumps found. (Code = 47) Position 1 = 31, Position 2 = 33
Branch analysis from position: 31
2 jumps found. (Code = 43) Position 1 = 34, Position 2 = 36
Branch analysis from position: 34
1 jumps found. (Code = 42) Position 1 = 37
Branch analysis from position: 37
2 jumps found. (Code = 47) Position 1 = 41, Position 2 = 43
Branch analysis from position: 41
2 jumps found. (Code = 47) Position 1 = 44, Position 2 = 46
Branch analysis from position: 44
2 jumps found. (Code = 43) Position 1 = 47, Position 2 = 49
Branch analysis from position: 47
1 jumps found. (Code = 42) Position 1 = 50
Branch analysis from position: 50
1 jumps found. (Code = 62) Position 1 = -2
Branch analysis from position: 49
1 jumps found. (Code = 62) Position 1 = -2
Branch analysis from position: 46
Branch analysis from position: 43
Branch analysis from position: 36
2 jumps found. (Code = 47) Position 1 = 41, Position 2 = 43
Branch analysis from position: 41
Branch analysis from position: 43
Branch analysis from position: 33
Branch analysis from position: 30
Branch analysis from position: 23
2 jumps found. (Code = 47) Position 1 = 28, Position 2 = 30
Branch analysis from position: 28
Branch analysis from position: 30
Branch analysis from position: 20
Branch analysis from position: 17
Branch analysis from position: 10
2 jumps found. (Code = 47) Position 1 = 15, Position 2 = 17
Branch analysis from position: 15
Branch analysis from position: 17
Branch analysis from position: 7
Branch analysis from position: 4
filename:       /in/njY4r
function name:  (null)
number of ops:  53
compiled vars:  !0 = $primary
line      #* E I O op                           fetch          ext  return  operands
-------------------------------------------------------------------------------------
    3     0  E >   ASSIGN                                                   !0, 0
    4     1      > JMPNZ_EX                                         ~2      !0, ->4
          2    >   IS_IDENTICAL                                     ~3      !0, '0'
          3        BOOL                                             ~2      ~3
          4    > > JMPNZ_EX                                         ~2      ~2, ->7
          5    >   IS_IDENTICAL                                     ~4      !0, 0
          6        BOOL                                             ~2      ~4
          7    > > JMPZ                                                     ~2, ->10
          8    >   QM_ASSIGN                                        ~5      1
          9      > JMP                                                      ->11
         10    >   QM_ASSIGN                                        ~5      0
         11    >   ECHO                                                     ~5
    5    12        ECHO                                                     '%0A%0D'
    7    13        ASSIGN                                                   !0, '0'
    8    14      > JMPNZ_EX                                         ~7      !0, ->17
         15    >   IS_IDENTICAL                                     ~8      !0, '0'
         16        BOOL                                             ~7      ~8
         17    > > JMPNZ_EX                                         ~7      ~7, ->20
         18    >   IS_IDENTICAL                                     ~9      !0, 0
         19        BOOL                                             ~7      ~9
         20    > > JMPZ                                                     ~7, ->23
         21    >   QM_ASSIGN                                        ~10     1
         22      > JMP                                                      ->24
         23    >   QM_ASSIGN                                        ~10     0
         24    >   ECHO                                                     ~10
    9    25        ECHO                                                     '%0A%0D'
   11    26        ASSIGN                                                   !0, null
   12    27      > JMPNZ_EX                                         ~12     !0, ->30
         28    >   IS_IDENTICAL                                     ~13     !0, '0'
         29        BOOL                                             ~12     ~13
         30    > > JMPNZ_EX                                         ~12     ~12, ->33
         31    >   IS_IDENTICAL                                     ~14     !0, 0
         32        BOOL                                             ~12     ~14
         33    > > JMPZ                                                     ~12, ->36
         34    >   QM_ASSIGN                                        ~15     1
         35      > JMP                                                      ->37
         36    >   QM_ASSIGN                                        ~15     0
         37    >   ECHO                                                     ~15
   13    38        ECHO                                                     '%0A%0D'
   15    39        ASSIGN                                                   !0, ''
   16    40      > JMPNZ_EX                                         ~17     !0, ->43
         41    >   IS_IDENTICAL                                     ~18     !0, '0'
         42        BOOL                                             ~17     ~18
         43    > > JMPNZ_EX                                         ~17     ~17, ->46
         44    >   IS_IDENTICAL                                     ~19     !0, 0
         45        BOOL                                             ~17     ~19
         46    > > JMPZ                                                     ~17, ->49
         47    >   QM_ASSIGN                                        ~20     1
         48      > JMP                                                      ->50
         49    >   QM_ASSIGN                                        ~20     0
         50    >   ECHO                                                     ~20
   17    51        ECHO                                                     '%0A%0D'
         52      > RETURN                                                   1

Generated using Vulcan Logic Dumper, using php 8.0.0


preferences:
164.44 ms | 1399 KiB | 13 Q