3v4l.org

run code in 300+ PHP versions simultaneously
<?php const STATUS_SUCCESS = 'success'; const STATUS_FAILED = 'failed'; const STATUS_PENDING = 'pending'; const STATUS_CHARGEBACK = 'chargeback'; const STATUS_CANCELED = 'canceled'; $status = 'canceled'; switch ($status) { case STATUS_FAILED: case STATUS_CANCELED: case STATUS_CHARGEBACK: var_dump('asdfasdf'); break; case STATUS_PENDING: case STATUS_CANCELED: case STATUS_SUCCESS: var_dump('dsfgdf'); break; default: throw new \InvalidArgumentException(sprintf("Unknown transaction response status: '%s'", $status)); break; }
Finding entry points
Branch analysis from position: 0
2 jumps found. (Code = 44) Position 1 = 9, Position 2 = 25
Branch analysis from position: 9
2 jumps found. (Code = 44) Position 1 = 12, Position 2 = 25
Branch analysis from position: 12
2 jumps found. (Code = 44) Position 1 = 15, Position 2 = 25
Branch analysis from position: 15
2 jumps found. (Code = 44) Position 1 = 18, Position 2 = 29
Branch analysis from position: 18
2 jumps found. (Code = 44) Position 1 = 21, Position 2 = 29
Branch analysis from position: 21
2 jumps found. (Code = 44) Position 1 = 24, Position 2 = 29
Branch analysis from position: 24
1 jumps found. (Code = 42) Position 1 = 33
Branch analysis from position: 33
1 jumps found. (Code = 108) Position 1 = -2
Branch analysis from position: 29
1 jumps found. (Code = 42) Position 1 = 42
Branch analysis from position: 42
1 jumps found. (Code = 62) Position 1 = -2
Branch analysis from position: 29
Branch analysis from position: 29
Branch analysis from position: 25
1 jumps found. (Code = 42) Position 1 = 42
Branch analysis from position: 42
Branch analysis from position: 25
Branch analysis from position: 25
filename:       /in/IttIi
function name:  (null)
number of ops:  43
compiled vars:  !0 = $status
line      #* E I O op                           fetch          ext  return  operands
-------------------------------------------------------------------------------------
    3     0  E >   DECLARE_CONST                                            'STATUS_SUCCESS', 'success'
    4     1        DECLARE_CONST                                            'STATUS_FAILED', 'failed'
    5     2        DECLARE_CONST                                            'STATUS_PENDING', 'pending'
    6     3        DECLARE_CONST                                            'STATUS_CHARGEBACK', 'chargeback'
    7     4        DECLARE_CONST                                            'STATUS_CANCELED', 'canceled'
    9     5        ASSIGN                                                   !0, 'canceled'
   12     6        FETCH_CONSTANT                                   ~3      'STATUS_FAILED'
          7        IS_EQUAL                                                 !0, ~3
          8      > JMPNZ                                                    ~2, ->25
   13     9    >   FETCH_CONSTANT                                   ~4      'STATUS_CANCELED'
         10        IS_EQUAL                                                 !0, ~4
         11      > JMPNZ                                                    ~2, ->25
   14    12    >   FETCH_CONSTANT                                   ~5      'STATUS_CHARGEBACK'
         13        IS_EQUAL                                                 !0, ~5
         14      > JMPNZ                                                    ~2, ->25
   17    15    >   FETCH_CONSTANT                                   ~6      'STATUS_PENDING'
         16        IS_EQUAL                                                 !0, ~6
         17      > JMPNZ                                                    ~2, ->29
   18    18    >   FETCH_CONSTANT                                   ~7      'STATUS_CANCELED'
         19        IS_EQUAL                                                 !0, ~7
         20      > JMPNZ                                                    ~2, ->29
   19    21    >   FETCH_CONSTANT                                   ~8      'STATUS_SUCCESS'
         22        IS_EQUAL                                                 !0, ~8
         23      > JMPNZ                                                    ~2, ->29
         24    > > JMP                                                      ->33
   15    25    >   INIT_FCALL                                               'var_dump'
         26        SEND_VAL                                                 'asdfasdf'
         27        DO_ICALL                                                 
   16    28      > JMP                                                      ->42
   20    29    >   INIT_FCALL                                               'var_dump'
         30        SEND_VAL                                                 'dsfgdf'
         31        DO_ICALL                                                 
   21    32      > JMP                                                      ->42
   23    33    >   NEW                                              $11     'InvalidArgumentException'
         34        INIT_FCALL                                               'sprintf'
         35        SEND_VAL                                                 'Unknown+transaction+response+status%3A+%27%25s%27'
         36        SEND_VAR                                                 !0
         37        DO_ICALL                                         $12     
         38        SEND_VAR_NO_REF_EX                                       $12
         39        DO_FCALL                                      0          
         40      > THROW                                         0          $11
   24    41*       JMP                                                      ->42
   25    42    > > RETURN                                                   1

Generated using Vulcan Logic Dumper, using php 8.0.0


preferences:
190.89 ms | 1400 KiB | 17 Q