3v4l.org

run code in 200+ PHP versions simultaneously
<?php class FizzBuzz { public function __call($n, $args) { return [0b10=>@Fizz,0b01=>@Buzz,0b11=>@FizzBuzz][(!($n%3)<<1)|!($n%5)]??$n; } } $fb = new FizzBuzz; var_dump($fb->{"0"}()); var_dump($fb->{"1"}()); var_dump($fb->{"2"}()); var_dump($fb->{"3"}()); var_dump($fb->{"4"}()); var_dump($fb->{"5"}()); var_dump($fb->{"6"}()); var_dump($fb->{"7"}()); var_dump($fb->{"8"}()); var_dump($fb->{"9"}()); var_dump($fb->{"10"}());
based on 5h9Wg
Finding entry points
Branch analysis from position: 0
1 jumps found. (Code = 62) Position 1 = -2
filename:       /in/l4F8j
function name:  (null)
number of ops:  60
compiled vars:  !0 = $fb
line     #* E I O op                           fetch          ext  return  operands
-------------------------------------------------------------------------------------
   3     0  E >   NOP                                                      
  11     1        NEW                                              $2      :113
         2        DO_FCALL                                      0          
         3        ASSIGN                                                   !0, $2
  12     4        INIT_FCALL                                               'var_dump'
         5        INIT_METHOD_CALL                                         !0, '0'
         6        DO_FCALL                                      0  $5      
         7        SEND_VAR                                                 $5
         8        DO_ICALL                                                 
  13     9        INIT_FCALL                                               'var_dump'
        10        INIT_METHOD_CALL                                         !0, '1'
        11        DO_FCALL                                      0  $7      
        12        SEND_VAR                                                 $7
        13        DO_ICALL                                                 
  14    14        INIT_FCALL                                               'var_dump'
        15        INIT_METHOD_CALL                                         !0, '2'
        16        DO_FCALL                                      0  $9      
        17        SEND_VAR                                                 $9
        18        DO_ICALL                                                 
  15    19        INIT_FCALL                                               'var_dump'
        20        INIT_METHOD_CALL                                         !0, '3'
        21        DO_FCALL                                      0  $11     
        22        SEND_VAR                                                 $11
        23        DO_ICALL                                                 
  16    24        INIT_FCALL                                               'var_dump'
        25        INIT_METHOD_CALL                                         !0, '4'
        26        DO_FCALL                                      0  $13     
        27        SEND_VAR                                                 $13
        28        DO_ICALL                                                 
  17    29        INIT_FCALL                                               'var_dump'
        30        INIT_METHOD_CALL                                         !0, '5'
        31        DO_FCALL                                      0  $15     
        32        SEND_VAR                                                 $15
        33        DO_ICALL                                                 
  18    34        INIT_FCALL                                               'var_dump'
        35        INIT_METHOD_CALL                                         !0, '6'
        36        DO_FCALL                                      0  $17     
        37        SEND_VAR                                                 $17
        38        DO_ICALL                                                 
  19    39        INIT_FCALL                                               'var_dump'
        40        INIT_METHOD_CALL                                         !0, '7'
        41        DO_FCALL                                      0  $19     
        42        SEND_VAR                                                 $19
        43        DO_ICALL                                                 
  20    44        INIT_FCALL                                               'var_dump'
        45        INIT_METHOD_CALL                                         !0, '8'
        46        DO_FCALL                                      0  $21     
        47        SEND_VAR                                                 $21
        48        DO_ICALL                                                 
  21    49        INIT_FCALL                                               'var_dump'
        50        INIT_METHOD_CALL                                         !0, '9'
        51        DO_FCALL                                      0  $23     
        52        SEND_VAR                                                 $23
        53        DO_ICALL                                                 
  22    54        INIT_FCALL                                               'var_dump'
        55        INIT_METHOD_CALL                                         !0, '10'
        56        DO_FCALL                                      0  $25     
        57        SEND_VAR                                                 $25
        58        DO_ICALL                                                 
        59      > RETURN                                                   1

Class FizzBuzz:
Function __call:
Finding entry points
Branch analysis from position: 0
1 jumps found. (Code = 62) Position 1 = -2
filename:       /in/l4F8j
function name:  __call
number of ops:  25
compiled vars:  !0 = $n, !1 = $args
line     #* E I O op                           fetch          ext  return  operands
-------------------------------------------------------------------------------------
   5     0  E >   RECV                                             !0      
         1        RECV                                             !1      
   7     2        BEGIN_SILENCE                                    ~2      
         3        FETCH_CONSTANT                                   ~3      'Fizz'
         4        END_SILENCE                                              ~2
         5        INIT_ARRAY                                       ~4      ~3, 2
         6        BEGIN_SILENCE                                    ~5      
         7        FETCH_CONSTANT                                   ~6      'Buzz'
         8        END_SILENCE                                              ~5
         9        ADD_ARRAY_ELEMENT                                ~4      ~6, 1
        10        BEGIN_SILENCE                                    ~7      
        11        FETCH_CONSTANT                                   ~8      'FizzBuzz'
        12        END_SILENCE                                              ~7
        13        ADD_ARRAY_ELEMENT                                ~4      ~8, 3
        14        MOD                                              ~9      !0, 3
        15        BOOL_NOT                                         ~10     ~9
        16        SL                                               ~11     ~10, 1
        17        MOD                                              ~12     !0, 5
        18        BOOL_NOT                                         ~13     ~12
        19        BW_OR                                            ~14     ~11, ~13
        20        FETCH_DIM_IS                                     ~15     ~4, ~14
        21        COALESCE                                         ~16     ~15
        22        QM_ASSIGN                                        ~16     !0
        23      > RETURN                                                   ~16
   8    24*     > RETURN                                                   null

End of function __call

End of class FizzBuzz.

Generated using Vulcan Logic Dumper, using php 7.3.0