3v4l.org

run code in 300+ PHP versions simultaneously
<?php $classes = get_declared_classes(); foreach($classes as $class) { $methods = get_class_methods($class); foreach($methods as $method) { if (in_array($method, array('__construct', '__destruct', '__call', '__callStatic', '__get', '__set', '__isset', '__unset', '__sleep', '__wakeup', '__toString', '__invoke', '__set_state', '__clone'))) { printf("%s::%s\n", $class, $method); } $functions = get_defined_functions(); print_r($functions); $functions_list = array(); foreach($functions['user'] as $func) { $f = new ReflectionFunction($func); $args = array(); foreach($f->getParameters() as $param) { $tmparg = ''; if ($param->isPassedByReference()) $tmparg = '&'; if ($param->isOptional()) { $tmparg = '[' . $tmparg . '$' . $param->getName() . ' = ' . $param->getDefaultValue() . ']'; } else { $tmparg.= '&' . $param->getName(); } $args[] = $tmparg; unset($tmparg); } printf("function %s ( %s ){[###]...[###]}\n", $func, implode(', ', $args)); } } }
Finding entry points
Branch analysis from position: 0
2 jumps found. (Code = 77) Position 1 = 4, Position 2 = 80
Branch analysis from position: 4
2 jumps found. (Code = 78) Position 1 = 5, Position 2 = 80
Branch analysis from position: 5
2 jumps found. (Code = 77) Position 1 = 10, Position 2 = 78
Branch analysis from position: 10
2 jumps found. (Code = 78) Position 1 = 11, Position 2 = 78
Branch analysis from position: 11
2 jumps found. (Code = 43) Position 1 = 13, Position 2 = 18
Branch analysis from position: 13
2 jumps found. (Code = 77) Position 1 = 27, Position 2 = 76
Branch analysis from position: 27
2 jumps found. (Code = 78) Position 1 = 28, Position 2 = 76
Branch analysis from position: 28
2 jumps found. (Code = 77) Position 1 = 36, Position 2 = 65
Branch analysis from position: 36
2 jumps found. (Code = 78) Position 1 = 37, Position 2 = 65
Branch analysis from position: 37
2 jumps found. (Code = 43) Position 1 = 41, Position 2 = 42
Branch analysis from position: 41
2 jumps found. (Code = 43) Position 1 = 45, Position 2 = 57
Branch analysis from position: 45
1 jumps found. (Code = 42) Position 1 = 61
Branch analysis from position: 61
1 jumps found. (Code = 42) Position 1 = 36
Branch analysis from position: 36
Branch analysis from position: 57
1 jumps found. (Code = 42) Position 1 = 36
Branch analysis from position: 36
Branch analysis from position: 42
Branch analysis from position: 65
1 jumps found. (Code = 42) Position 1 = 27
Branch analysis from position: 27
Branch analysis from position: 65
Branch analysis from position: 76
1 jumps found. (Code = 42) Position 1 = 10
Branch analysis from position: 10
Branch analysis from position: 76
Branch analysis from position: 18
Branch analysis from position: 78
1 jumps found. (Code = 42) Position 1 = 4
Branch analysis from position: 4
Branch analysis from position: 78
Branch analysis from position: 80
1 jumps found. (Code = 62) Position 1 = -2
Branch analysis from position: 80
filename:       /in/2PAfD
function name:  (null)
number of ops:  82
compiled vars:  !0 = $classes, !1 = $class, !2 = $methods, !3 = $method, !4 = $functions, !5 = $functions_list, !6 = $func, !7 = $f, !8 = $args, !9 = $param, !10 = $tmparg
line      #* E I O op                           fetch          ext  return  operands
-------------------------------------------------------------------------------------
    2     0  E >   INIT_FCALL                                               'get_declared_classes'
          1        DO_ICALL                                         $11     
          2        ASSIGN                                                   !0, $11
    3     3      > FE_RESET_R                                       $13     !0, ->80
          4    > > FE_FETCH_R                                               $13, !1, ->80
    4     5    >   INIT_FCALL                                               'get_class_methods'
          6        SEND_VAR                                                 !1
          7        DO_ICALL                                         $14     
          8        ASSIGN                                                   !2, $14
    5     9      > FE_RESET_R                                       $16     !2, ->78
         10    > > FE_FETCH_R                                               $16, !3, ->78
    6    11    >   IN_ARRAY                                                 !3, <array>
         12      > JMPZ                                                     ~17, ->18
    7    13    >   INIT_FCALL                                               'printf'
         14        SEND_VAL                                                 '%25s%3A%3A%25s%0A'
         15        SEND_VAR                                                 !1
         16        SEND_VAR                                                 !3
         17        DO_ICALL                                                 
    9    18    >   INIT_FCALL                                               'get_defined_functions'
         19        DO_ICALL                                         $19     
         20        ASSIGN                                                   !4, $19
   10    21        INIT_FCALL                                               'print_r'
         22        SEND_VAR                                                 !4
         23        DO_ICALL                                                 
   11    24        ASSIGN                                                   !5, <array>
   12    25        FETCH_DIM_R                                      ~23     !4, 'user'
         26      > FE_RESET_R                                       $24     ~23, ->76
         27    > > FE_FETCH_R                                               $24, !6, ->76
   13    28    >   NEW                                              $25     'ReflectionFunction'
         29        SEND_VAR_EX                                              !6
         30        DO_FCALL                                      0          
         31        ASSIGN                                                   !7, $25
   14    32        ASSIGN                                                   !8, <array>
   15    33        INIT_METHOD_CALL                                         !7, 'getParameters'
         34        DO_FCALL                                      0  $29     
         35      > FE_RESET_R                                       $30     $29, ->65
         36    > > FE_FETCH_R                                               $30, !9, ->65
   16    37    >   ASSIGN                                                   !10, ''
   17    38        INIT_METHOD_CALL                                         !9, 'isPassedByReference'
         39        DO_FCALL                                      0  $32     
         40      > JMPZ                                                     $32, ->42
         41    >   ASSIGN                                                   !10, '%26'
   18    42    >   INIT_METHOD_CALL                                         !9, 'isOptional'
         43        DO_FCALL                                      0  $34     
         44      > JMPZ                                                     $34, ->57
   19    45    >   CONCAT                                           ~35     '%5B', !10
         46        CONCAT                                           ~36     ~35, '%24'
         47        INIT_METHOD_CALL                                         !9, 'getName'
         48        DO_FCALL                                      0  $37     
         49        CONCAT                                           ~38     ~36, $37
         50        CONCAT                                           ~39     ~38, '+%3D+'
         51        INIT_METHOD_CALL                                         !9, 'getDefaultValue'
         52        DO_FCALL                                      0  $40     
         53        CONCAT                                           ~41     ~39, $40
         54        CONCAT                                           ~42     ~41, '%5D'
         55        ASSIGN                                                   !10, ~42
         56      > JMP                                                      ->61
   21    57    >   INIT_METHOD_CALL                                         !9, 'getName'
         58        DO_FCALL                                      0  $44     
         59        CONCAT                                           ~45     '%26', $44
         60        ASSIGN_OP                                     8          !10, ~45
   23    61    >   ASSIGN_DIM                                               !8
         62        OP_DATA                                                  !10
   24    63        UNSET_CV                                                 !10
   15    64      > JMP                                                      ->36
         65    >   FE_FREE                                                  $30
   26    66        INIT_FCALL                                               'printf'
         67        SEND_VAL                                                 'function+%25s+%28+%25s+%29%7B%5B%23%23%23%5D...%5B%23%23%23%5D%7D%0A'
         68        SEND_VAR                                                 !6
         69        INIT_FCALL                                               'implode'
         70        SEND_VAL                                                 '%2C+'
         71        SEND_VAR                                                 !8
         72        DO_ICALL                                         $48     
         73        SEND_VAR                                                 $48
         74        DO_ICALL                                                 
   12    75      > JMP                                                      ->27
         76    >   FE_FREE                                                  $24
    5    77      > JMP                                                      ->10
         78    >   FE_FREE                                                  $16
    3    79      > JMP                                                      ->4
         80    >   FE_FREE                                                  $13
   29    81      > RETURN                                                   1

Generated using Vulcan Logic Dumper, using php 8.0.0


preferences:
170.34 ms | 1404 KiB | 25 Q