牛牛在线工具

ReflectionClass::getMethod()

收录 8868 个 PHP 函数,含用途说明与用法示例。

ReflectionClass::getMethod()

获取指定类中的方法的反射类实例

函数:ReflectionClass::getMethod() 适用版本:PHP 5+ 用法: ReflectionClass::getMethod() 方法用于获取指定类中的方法的反射类实例。 语法: public ReflectionMethod ReflectionClass::getMethod ( string $name ) 参数: name:要获取的方法的名称。 返回值: 返回一个 ReflectionMethod 对象,该对象表示指定类中的方法。 示例: // 定义一个类 class MyClass { public function myMethod() { echo "Hello, world!"; } } // 创建 ReflectionClass 实例 $reflectionClass = new ReflectionClass('MyClass'); // 获取指定方法的反射类实例 $reflectionMethod = $reflectionClass->getMethod('myMethod'); // 输出方法的名称 echo $reflectionMethod->getName(); // 输出:myMethod // 输出方法是否为公共方法 echo $reflectionMethod->isPublic(); // 输出:1 (表示是公共方法) // 输出方法是否为静态方法 echo $reflectionMethod->isStatic(); // 输出:0 (表示不是静态方法) // 调用方法 $myObject = new MyClass(); $reflectionMethod->invoke($myObject); // 输出:Hello, world! 上述示例中,我们首先创建了一个名为MyClass的类,其中包含了一个名为myMethod的公共方法。然后,我们使用ReflectionClass类创建了一个反射类实例$reflectionClass来表示MyClass类。接下来,我们使用ReflectionClass的getMethod()方法来获取myMethod方法的反射类实例$reflectionMethod。 通过$reflectionMethod对象,我们可以使用一系列的方法来获取有关该方法的信息,例如getName()方法用于获取方法的名称,isPublic()方法用于判断方法是否为公共方法,isStatic()方法用于判断方法是否为静态方法。 最后,我们通过invoke()方法调用了myMethod方法,并输出了该方法的结果。 请注意,ReflectionClass::getMethod()方法只能获取公共方法,如果想获取非公共方法,可以使用ReflectionClass::getMethods()方法获取所有方法的反射类实例,然后通过循环遍历来判断和获取指定方法。