English | 简体中文 | 繁體中文
查询

ReflectionMethod::isPublic()函数—用法及示例

「 检查方法是否为公共方法 」


函数名称:ReflectionMethod::isPublic()

适用版本:PHP 5 >= 5.0.0, PHP 7

函数说明:ReflectionMethod::isPublic() 方法用于检查方法是否为公共方法。

用法示例:

class MyClass {
    public function publicMethod() {
        // 公共方法
    }
    
    private function privateMethod() {
        // 私有方法
    }
    
    protected function protectedMethod() {
        // 受保护方法
    }
}

$reflection = new ReflectionMethod('MyClass', 'publicMethod');

if ($reflection->isPublic()) {
    echo "该方法是公共方法";
} else {
    echo "该方法不是公共方法";
}

输出结果:

该方法是公共方法

解释说明:

  1. 首先,我们定义了一个名为MyClass的类,并在其中定义了三种不同访问修饰符(public、private、protected)的方法。
  2. 然后,我们通过ReflectionMethod类的构造函数创建了一个$reflection对象,该对象表示了MyClass类中的publicMethod()方法。
  3. 接下来,我们使用isPublic()方法来检查该方法是否为公共方法。如果是公共方法,则输出"该方法是公共方法";否则,输出"该方法不是公共方法"。

注意事项:

  • ReflectionMethod::isPublic()方法只能用于反射公共方法,不能用于反射其他访问修饰符(private、protected)的方法。
  • 在上述示例中,我们通过传递类名和方法名作为参数创建了一个ReflectionMethod对象。你也可以使用ReflectionClass类来获取类的反射对象,然后再通过getMethod()方法获取方法的反射对象。
补充纠错
热门PHP函数
分享链接