3v4l.org

run code in 300+ PHP versions simultaneously
<?php $myValue = true; $var = 'foo'; $value = $myValue ? $myValue : exit(); $value = $myValue ?: exit(); $value = $var == 'foo' ? 'bar' : die( 'world' ); $value = (!$myValue ) ? exit() : $myValue; $value = $var != 'foo' ? die( 'world' ) : 'bar'; echo 'still executable';
Finding entry points
Branch analysis from position: 0
2 jumps found. (Code = 43) Position 1 = 3, Position 2 = 5
Branch analysis from position: 3
1 jumps found. (Code = 42) Position 1 = 7
Branch analysis from position: 7
1 jumps found. (Code = 79) Position 1 = -2
Branch analysis from position: 5
1 jumps found. (Code = 79) Position 1 = -2
filename:       /in/oMWuA
function name:  (null)
number of ops:  35
compiled vars:  !0 = $myValue, !1 = $var, !2 = $value
line      #* E I O op                           fetch          ext  return  operands
-------------------------------------------------------------------------------------
    2     0  E >   ASSIGN                                                   !0, <true>
    3     1        ASSIGN                                                   !1, 'foo'
    5     2      > JMPZ                                                     !0, ->5
          3    >   QM_ASSIGN                                        ~5      !0
          4      > JMP                                                      ->7
          5    > > EXIT                                                     
          6*       QM_ASSIGN                                        ~5      <true>
          7    >   ASSIGN                                                   !2, ~5
    6     8        JMP_SET                                          ~7      !0, ->11
          9      > EXIT                                                     
         10*       QM_ASSIGN                                        ~7      <true>
         11*       ASSIGN                                                   !2, ~7
    7    12*       IS_EQUAL                                                 !1, 'foo'
         13*       JMPZ                                                     ~9, ->16
         14*       QM_ASSIGN                                        ~10     'bar'
         15*       JMP                                                      ->18
         16*       EXIT                                                     'world'
         17*       QM_ASSIGN                                        ~10     <true>
         18*       ASSIGN                                                   !2, ~10
    9    19*       BOOL_NOT                                         ~12     !0
         20*       JMPZ                                                     ~12, ->24
         21*       EXIT                                                     
         22*       QM_ASSIGN                                        ~13     <true>
         23*       JMP                                                      ->25
         24*       QM_ASSIGN                                        ~13     !0
         25*       ASSIGN                                                   !2, ~13
   10    26*       IS_NOT_EQUAL                                             !1, 'foo'
         27*       JMPZ                                                     ~15, ->31
         28*       EXIT                                                     'world'
         29*       QM_ASSIGN                                        ~16     <true>
         30*       JMP                                                      ->32
         31*       QM_ASSIGN                                        ~16     'bar'
         32*       ASSIGN                                                   !2, ~16
   12    33*       ECHO                                                     'still+executable'
         34*     > RETURN                                                   1

Generated using Vulcan Logic Dumper, using php 8.0.0


preferences:
194.1 ms | 1000 KiB | 13 Q