3v4l.org

run code in 300+ PHP versions simultaneously
<?php $a = 12; $b = 2; if ($b == 0) echo "b is zero\n"; else echo "<td>" . $a / $b . "</td>\n"; $b = 0; if ($b == 0) echo "b is zero\n"; else echo "<td>" . $a / $b . "</td>\n"; $b = "blah"; if ($b == 0) echo "b is zero\n"; else echo "<td>" . $a / $b . "</td>\n"; $b = "12blah"; if ($b == 0) echo "b is zero\n"; else echo "<td>" . $a / $b . "</td>\n"; $b = 1e-999; if ($b == 0) echo "b is zero\n"; else echo "<td>" . $a / $b . "</td>\n"; $b = false; if ($b == 0) echo "b is zero\n"; else echo "<td>" . $a / $b . "</td>\n"; $b = null; if ($b == 0) echo 1000 / $b; else echo "<td>" . $a / $b . "</td>\n"; $b = array(); if ($b == 0) echo "b is zero\n"; else echo "<td>" . $a / $b . "</td>\n";
Finding entry points
Branch analysis from position: 0
2 jumps found. (Code = 43) Position 1 = 4, Position 2 = 6
Branch analysis from position: 4
1 jumps found. (Code = 42) Position 1 = 10
Branch analysis from position: 10
2 jumps found. (Code = 43) Position 1 = 13, Position 2 = 15
Branch analysis from position: 13
1 jumps found. (Code = 42) Position 1 = 19
Branch analysis from position: 19
2 jumps found. (Code = 43) Position 1 = 22, Position 2 = 24
Branch analysis from position: 22
1 jumps found. (Code = 42) Position 1 = 28
Branch analysis from position: 28
2 jumps found. (Code = 43) Position 1 = 31, Position 2 = 33
Branch analysis from position: 31
1 jumps found. (Code = 42) Position 1 = 37
Branch analysis from position: 37
2 jumps found. (Code = 43) Position 1 = 40, Position 2 = 42
Branch analysis from position: 40
1 jumps found. (Code = 42) Position 1 = 46
Branch analysis from position: 46
2 jumps found. (Code = 43) Position 1 = 49, Position 2 = 51
Branch analysis from position: 49
1 jumps found. (Code = 42) Position 1 = 55
Branch analysis from position: 55
2 jumps found. (Code = 43) Position 1 = 58, Position 2 = 61
Branch analysis from position: 58
1 jumps found. (Code = 42) Position 1 = 65
Branch analysis from position: 65
2 jumps found. (Code = 43) Position 1 = 68, Position 2 = 70
Branch analysis from position: 68
1 jumps found. (Code = 42) Position 1 = 74
Branch analysis from position: 74
1 jumps found. (Code = 62) Position 1 = -2
Branch analysis from position: 70
1 jumps found. (Code = 62) Position 1 = -2
Branch analysis from position: 61
2 jumps found. (Code = 43) Position 1 = 68, Position 2 = 70
Branch analysis from position: 68
Branch analysis from position: 70
Branch analysis from position: 51
2 jumps found. (Code = 43) Position 1 = 58, Position 2 = 61
Branch analysis from position: 58
Branch analysis from position: 61
Branch analysis from position: 42
2 jumps found. (Code = 43) Position 1 = 49, Position 2 = 51
Branch analysis from position: 49
Branch analysis from position: 51
Branch analysis from position: 33
2 jumps found. (Code = 43) Position 1 = 40, Position 2 = 42
Branch analysis from position: 40
Branch analysis from position: 42
Branch analysis from position: 24
2 jumps found. (Code = 43) Position 1 = 31, Position 2 = 33
Branch analysis from position: 31
Branch analysis from position: 33
Branch analysis from position: 15
2 jumps found. (Code = 43) Position 1 = 22, Position 2 = 24
Branch analysis from position: 22
Branch analysis from position: 24
Branch analysis from position: 6
2 jumps found. (Code = 43) Position 1 = 13, Position 2 = 15
Branch analysis from position: 13
Branch analysis from position: 15
filename:       /in/YPHfn
function name:  (null)
number of ops:  75
compiled vars:  !0 = $a, !1 = $b
line      #* E I O op                           fetch          ext  return  operands
-------------------------------------------------------------------------------------
    2     0  E >   ASSIGN                                                   !0, 12
    3     1        ASSIGN                                                   !1, 2
    5     2        IS_EQUAL                                                 !1, 0
          3      > JMPZ                                                     ~4, ->6
          4    >   ECHO                                                     'b+is+zero%0A'
          5      > JMP                                                      ->10
    6     6    >   DIV                                              ~5      !0, !1
          7        CONCAT                                           ~6      '%3Ctd%3E', ~5
          8        CONCAT                                           ~7      ~6, '%3C%2Ftd%3E%0A'
          9        ECHO                                                     ~7
    8    10    >   ASSIGN                                                   !1, 0
   10    11        IS_EQUAL                                                 !1, 0
         12      > JMPZ                                                     ~9, ->15
         13    >   ECHO                                                     'b+is+zero%0A'
         14      > JMP                                                      ->19
   11    15    >   DIV                                              ~10     !0, !1
         16        CONCAT                                           ~11     '%3Ctd%3E', ~10
         17        CONCAT                                           ~12     ~11, '%3C%2Ftd%3E%0A'
         18        ECHO                                                     ~12
   13    19    >   ASSIGN                                                   !1, 'blah'
   15    20        IS_EQUAL                                                 !1, 0
         21      > JMPZ                                                     ~14, ->24
         22    >   ECHO                                                     'b+is+zero%0A'
         23      > JMP                                                      ->28
   16    24    >   DIV                                              ~15     !0, !1
         25        CONCAT                                           ~16     '%3Ctd%3E', ~15
         26        CONCAT                                           ~17     ~16, '%3C%2Ftd%3E%0A'
         27        ECHO                                                     ~17
   18    28    >   ASSIGN                                                   !1, '12blah'
   20    29        IS_EQUAL                                                 !1, 0
         30      > JMPZ                                                     ~19, ->33
         31    >   ECHO                                                     'b+is+zero%0A'
         32      > JMP                                                      ->37
   21    33    >   DIV                                              ~20     !0, !1
         34        CONCAT                                           ~21     '%3Ctd%3E', ~20
         35        CONCAT                                           ~22     ~21, '%3C%2Ftd%3E%0A'
         36        ECHO                                                     ~22
   23    37    >   ASSIGN                                                   !1, 0
   25    38        IS_EQUAL                                                 !1, 0
         39      > JMPZ                                                     ~24, ->42
         40    >   ECHO                                                     'b+is+zero%0A'
         41      > JMP                                                      ->46
   26    42    >   DIV                                              ~25     !0, !1
         43        CONCAT                                           ~26     '%3Ctd%3E', ~25
         44        CONCAT                                           ~27     ~26, '%3C%2Ftd%3E%0A'
         45        ECHO                                                     ~27
   28    46    >   ASSIGN                                                   !1, <false>
   30    47        IS_EQUAL                                                 !1, 0
         48      > JMPZ                                                     ~29, ->51
         49    >   ECHO                                                     'b+is+zero%0A'
         50      > JMP                                                      ->55
   31    51    >   DIV                                              ~30     !0, !1
         52        CONCAT                                           ~31     '%3Ctd%3E', ~30
         53        CONCAT                                           ~32     ~31, '%3C%2Ftd%3E%0A'
         54        ECHO                                                     ~32
   33    55    >   ASSIGN                                                   !1, null
   35    56        IS_EQUAL                                                 !1, 0
         57      > JMPZ                                                     ~34, ->61
         58    >   DIV                                              ~35     1000, !1
         59        ECHO                                                     ~35
         60      > JMP                                                      ->65
   36    61    >   DIV                                              ~36     !0, !1
         62        CONCAT                                           ~37     '%3Ctd%3E', ~36
         63        CONCAT                                           ~38     ~37, '%3C%2Ftd%3E%0A'
         64        ECHO                                                     ~38
   38    65    >   ASSIGN                                                   !1, <array>
   40    66        IS_EQUAL                                                 !1, 0
         67      > JMPZ                                                     ~40, ->70
         68    >   ECHO                                                     'b+is+zero%0A'
         69      > JMP                                                      ->74
   41    70    >   DIV                                              ~41     !0, !1
         71        CONCAT                                           ~42     '%3Ctd%3E', ~41
         72        CONCAT                                           ~43     ~42, '%3C%2Ftd%3E%0A'
         73        ECHO                                                     ~43
         74    > > RETURN                                                   1

Generated using Vulcan Logic Dumper, using php 8.0.0


preferences:
145.91 ms | 1403 KiB | 13 Q