3v4l.org

run code in 300+ PHP versions simultaneously
<?php function y($x, $y, $z) { switch ($a->a()) { default: $s = '' . $b; } $c = array($b); switch ($a->a()) { case A::B: $e = 0; $f = 0; if (!empty($d[''])) { $e = 0; } else { if (!isset($d[''])) { if (isset($d[''])) { $d[''] = $d['']; } } if (isset($d[''])) { $e = a(0, a(0, $d[''])); } } case A::B: if (!isset($d[''])) { if (isset($d[''])) { $d[''] = round((0 - $d['']) * 0 * 0); } } if (isset($d[''])) { if ($d[''] < 0 || $d[''] > 0) { new Z(''); } } if (!isset($d[''])) { if (isset($d[''])) { $d[''] = $d['']; } } if (isset($d[''])) { $g[] = $d['']; } break; case A::B: if (isset($d[''])) { $g[] = $d['']; } break; case A::B: if (!isset($d[''])) { if (isset($d[''])) { $d[''] = $d['']; } } if (isset($d[''])) { if ($d[''] < 0) { new Z(''); } $g[] = $d['']; } break; } } echo "Success!";
Finding entry points
Branch analysis from position: 0
1 jumps found. (Code = 62) Position 1 = -2
filename:       /in/AYCSU
function name:  (null)
number of ops:  2
compiled vars:  none
line      #* E I O op                           fetch          ext  return  operands
-------------------------------------------------------------------------------------
   68     0  E >   ECHO                                                     'Success%21'
          1      > RETURN                                                   1

Function y:
Finding entry points
Branch analysis from position: 0
1 jumps found. (Code = 42) Position 1 = 6
Branch analysis from position: 6
2 jumps found. (Code = 44) Position 1 = 16, Position 2 = 26
Branch analysis from position: 16
2 jumps found. (Code = 44) Position 1 = 19, Position 2 = 54
Branch analysis from position: 19
2 jumps found. (Code = 44) Position 1 = 22, Position 2 = 95
Branch analysis from position: 22
2 jumps found. (Code = 44) Position 1 = 25, Position 2 = 101
Branch analysis from position: 25
1 jumps found. (Code = 42) Position 1 = 122
Branch analysis from position: 122
1 jumps found. (Code = 62) Position 1 = -2
Branch analysis from position: 101
2 jumps found. (Code = 43) Position 1 = 104, Position 2 = 109
Branch analysis from position: 104
2 jumps found. (Code = 43) Position 1 = 106, Position 2 = 109
Branch analysis from position: 106
2 jumps found. (Code = 43) Position 1 = 111, Position 2 = 121
Branch analysis from position: 111
2 jumps found. (Code = 43) Position 1 = 114, Position 2 = 118
Branch analysis from position: 114
1 jumps found. (Code = 42) Position 1 = 122
Branch analysis from position: 122
Branch analysis from position: 118
Branch analysis from position: 121
Branch analysis from position: 109
Branch analysis from position: 109
Branch analysis from position: 95
2 jumps found. (Code = 43) Position 1 = 97, Position 2 = 100
Branch analysis from position: 97
1 jumps found. (Code = 42) Position 1 = 122
Branch analysis from position: 122
Branch analysis from position: 100
Branch analysis from position: 54
2 jumps found. (Code = 43) Position 1 = 57, Position 2 = 68
Branch analysis from position: 57
2 jumps found. (Code = 43) Position 1 = 59, Position 2 = 68
Branch analysis from position: 59
2 jumps found. (Code = 43) Position 1 = 70, Position 2 = 81
Branch analysis from position: 70
2 jumps found. (Code = 47) Position 1 = 73, Position 2 = 76
Branch analysis from position: 73
2 jumps found. (Code = 43) Position 1 = 77, Position 2 = 81
Branch analysis from position: 77
2 jumps found. (Code = 43) Position 1 = 84, Position 2 = 89
Branch analysis from position: 84
2 jumps found. (Code = 43) Position 1 = 86, Position 2 = 89
Branch analysis from position: 86
2 jumps found. (Code = 43) Position 1 = 91, Position 2 = 94
Branch analysis from position: 91
1 jumps found. (Code = 42) Position 1 = 122
Branch analysis from position: 122
Branch analysis from position: 94
Branch analysis from position: 89
Branch analysis from position: 89
Branch analysis from position: 81
Branch analysis from position: 76
Branch analysis from position: 81
Branch analysis from position: 68
Branch analysis from position: 68
Branch analysis from position: 26
2 jumps found. (Code = 43) Position 1 = 31, Position 2 = 33
Branch analysis from position: 31
1 jumps found. (Code = 42) Position 1 = 54
Branch analysis from position: 54
Branch analysis from position: 33
2 jumps found. (Code = 43) Position 1 = 36, Position 2 = 41
Branch analysis from position: 36
2 jumps found. (Code = 43) Position 1 = 38, Position 2 = 41
Branch analysis from position: 38
2 jumps found. (Code = 43) Position 1 = 43, Position 2 = 54
Branch analysis from position: 43
2 jumps found. (Code = 43) Position 1 = 57, Position 2 = 68
Branch analysis from position: 57
Branch analysis from position: 68
Branch analysis from position: 54
Branch analysis from position: 41
Branch analysis from position: 41
filename:       /in/AYCSU
function name:  y
number of ops:  124
compiled vars:  !0 = $x, !1 = $y, !2 = $z, !3 = $a, !4 = $s, !5 = $b, !6 = $c, !7 = $e, !8 = $f, !9 = $d, !10 = $g
line      #* E I O op                           fetch          ext  return  operands
-------------------------------------------------------------------------------------
    3     0  E >   RECV                                             !0      
          1        RECV                                             !1      
          2        RECV                                             !2      
    5     3        INIT_METHOD_CALL                                         !3, 'a'
          4        DO_FCALL                                      0  $11     
          5      > JMP                                                      ->6
    7     6    >   CONCAT                                           ~13     '', !5
          7        ASSIGN                                                   !4, ~13
          8        FREE                                                     $11
    9     9        INIT_ARRAY                                       ~15     !5
         10        ASSIGN                                                   !6, ~15
   11    11        INIT_METHOD_CALL                                         !3, 'a'
         12        DO_FCALL                                      0  $17     
   12    13        FETCH_CLASS_CONSTANT                             ~19     'A', 'B'
         14        CASE                                                     $17, ~19
         15      > JMPNZ                                                    ~18, ->26
   27    16    >   FETCH_CLASS_CONSTANT                             ~20     'A', 'B'
         17        CASE                                                     $17, ~20
         18      > JMPNZ                                                    ~18, ->54
   47    19    >   FETCH_CLASS_CONSTANT                             ~21     'A', 'B'
         20        CASE                                                     $17, ~21
         21      > JMPNZ                                                    ~18, ->95
   52    22    >   FETCH_CLASS_CONSTANT                             ~22     'A', 'B'
         23        CASE                                                     $17, ~22
         24      > JMPNZ                                                    ~18, ->101
         25    > > JMP                                                      ->122
   13    26    >   ASSIGN                                                   !7, 0
   14    27        ASSIGN                                                   !8, 0
   15    28        ISSET_ISEMPTY_DIM_OBJ                         1  ~25     !9, ''
         29        BOOL_NOT                                         ~26     ~25
         30      > JMPZ                                                     ~26, ->33
   16    31    >   ASSIGN                                                   !7, 0
   15    32      > JMP                                                      ->54
   18    33    >   ISSET_ISEMPTY_DIM_OBJ                         0  ~28     !9, ''
         34        BOOL_NOT                                         ~29     ~28
         35      > JMPZ                                                     ~29, ->41
   19    36    >   ISSET_ISEMPTY_DIM_OBJ                         0          !9, ''
         37      > JMPZ                                                     ~30, ->41
   20    38    >   FETCH_DIM_R                                      ~32     !9, ''
         39        ASSIGN_DIM                                               !9, ''
         40        OP_DATA                                                  ~32
   23    41    >   ISSET_ISEMPTY_DIM_OBJ                         0          !9, ''
         42      > JMPZ                                                     ~33, ->54
   24    43    >   INIT_FCALL_BY_NAME                                       'a'
         44        SEND_VAL_EX                                              0
         45        INIT_FCALL_BY_NAME                                       'a'
         46        SEND_VAL_EX                                              0
         47        CHECK_FUNC_ARG                                           
         48        FETCH_DIM_FUNC_ARG                               $34     !9, ''
         49        SEND_FUNC_ARG                                            $34
         50        DO_FCALL                                      0  $35     
         51        SEND_VAR_NO_REF_EX                                       $35
         52        DO_FCALL                                      0  $36     
         53        ASSIGN                                                   !7, $36
   28    54    >   ISSET_ISEMPTY_DIM_OBJ                         0  ~38     !9, ''
         55        BOOL_NOT                                         ~39     ~38
         56      > JMPZ                                                     ~39, ->68
   29    57    >   ISSET_ISEMPTY_DIM_OBJ                         0          !9, ''
         58      > JMPZ                                                     ~40, ->68
   30    59    >   INIT_FCALL                                               'round'
         60        FETCH_DIM_R                                      ~42     !9, ''
         61        SUB                                              ~43     0, ~42
         62        MUL                                              ~44     ~43, 0
         63        MUL                                              ~45     ~44, 0
         64        SEND_VAL                                                 ~45
         65        DO_ICALL                                         $46     
         66        ASSIGN_DIM                                               !9, ''
         67        OP_DATA                                                  $46
   33    68    >   ISSET_ISEMPTY_DIM_OBJ                         0          !9, ''
         69      > JMPZ                                                     ~47, ->81
   34    70    >   FETCH_DIM_R                                      ~48     !9, ''
         71        IS_SMALLER                                       ~49     ~48, 0
         72      > JMPNZ_EX                                         ~49     ~49, ->76
         73    >   FETCH_DIM_R                                      ~50     !9, ''
         74        IS_SMALLER                                       ~51     0, ~50
         75        BOOL                                             ~49     ~51
         76    > > JMPZ                                                     ~49, ->81
   35    77    >   NEW                                              $52     'Z'
         78        SEND_VAL_EX                                              ''
         79        DO_FCALL                                      0          
         80        FREE                                                     $52
   38    81    >   ISSET_ISEMPTY_DIM_OBJ                         0  ~54     !9, ''
         82        BOOL_NOT                                         ~55     ~54
         83      > JMPZ                                                     ~55, ->89
   39    84    >   ISSET_ISEMPTY_DIM_OBJ                         0          !9, ''
         85      > JMPZ                                                     ~56, ->89
   40    86    >   FETCH_DIM_R                                      ~58     !9, ''
         87        ASSIGN_DIM                                               !9, ''
         88        OP_DATA                                                  ~58
   43    89    >   ISSET_ISEMPTY_DIM_OBJ                         0          !9, ''
         90      > JMPZ                                                     ~59, ->94
   44    91    >   FETCH_DIM_R                                      ~61     !9, ''
         92        ASSIGN_DIM                                               !10
         93        OP_DATA                                                  ~61
   46    94    > > JMP                                                      ->122
   48    95    >   ISSET_ISEMPTY_DIM_OBJ                         0          !9, ''
         96      > JMPZ                                                     ~62, ->100
   49    97    >   FETCH_DIM_R                                      ~64     !9, ''
         98        ASSIGN_DIM                                               !10
         99        OP_DATA                                                  ~64
   51   100    > > JMP                                                      ->122
   53   101    >   ISSET_ISEMPTY_DIM_OBJ                         0  ~65     !9, ''
        102        BOOL_NOT                                         ~66     ~65
        103      > JMPZ                                                     ~66, ->109
   54   104    >   ISSET_ISEMPTY_DIM_OBJ                         0          !9, ''
        105      > JMPZ                                                     ~67, ->109
   55   106    >   FETCH_DIM_R                                      ~69     !9, ''
        107        ASSIGN_DIM                                               !9, ''
        108        OP_DATA                                                  ~69
   58   109    >   ISSET_ISEMPTY_DIM_OBJ                         0          !9, ''
        110      > JMPZ                                                     ~70, ->121
   59   111    >   FETCH_DIM_R                                      ~71     !9, ''
        112        IS_SMALLER                                               ~71, 0
        113      > JMPZ                                                     ~72, ->118
   60   114    >   NEW                                              $73     'Z'
        115        SEND_VAL_EX                                              ''
        116        DO_FCALL                                      0          
        117        FREE                                                     $73
   62   118    >   FETCH_DIM_R                                      ~76     !9, ''
        119        ASSIGN_DIM                                               !10
        120        OP_DATA                                                  ~76
   64   121    > > JMP                                                      ->122
        122    >   FREE                                                     $17
   66   123      > RETURN                                                   null

End of function y

Generated using Vulcan Logic Dumper, using php 8.0.0


preferences:
184.81 ms | 1439 KiB | 14 Q