0

这里有三个方法function_onefunction_two并且function_threeExample课堂上。

class Example
{
    private function function_one() { ... }

    protected function function_two() { ... }

    public function function_three() { ... }

    public function check_here()
    {
        if (is_public_method('function_three')) {
            return true;
        } else {
            return false;
        }
    }
}

所以,我想知道哪个访问修饰符(public, protected, private)是方法。虚数is_public_method应该返回真,因为function_threepublic方法。有没有办法做到这一点?

4

2 回答 2

2

您可以使用ReflectionClassand执行此操作ReflectionMethod

public function check_here()
{
    $obj = new ReflectionClass($this);
    return $obj->getMethod('function_three')->isPublic();
}
于 2013-06-27T11:18:54.623 回答
1

您需要查看ReflectionMethodisPublic方法。

于 2013-06-27T11:19:37.927 回答