我正在构建一个API,用户可以在其中请求传递到类中的“命令”。假设该命令匹配一个PUBLIC函数,它将成功执行。如果命令匹配一个protected函数,它需要抛出一个错误。想法是,可以通过将函数从PUBLIC更改为PROTECTED来禁用函数,而不是重命名或删除它们。我目前这样做,但命令是公开的还是protected并不重要。$sMethod($aParameters);} 最佳答案 只需使用ReflectionMethod:/***LookforCommandmethod*/if(method_exists($this,$sMet