首页  >  文章  >  后端开发  >  php怎么获取当前类的方法(两种方式)

php怎么获取当前类的方法(两种方式)

PHPz
PHPz原创
2023-04-12 09:20:001371浏览

对于PHP开发者而言,获取当前类的方法是一项非常基础但又重要的操作。在PHP中,如果我们需要获取当前类的方法,可以采用以下两种方式来实现。

方法一:使用__METHOD__魔术常量

__METHOD__是PHP中的一个魔术常量,它可以返回当前执行方法的名字。因此,我们可以通过使用它来获取当前类的方法。以下是一个示例代码:

class Person {
    public function getName() {
        echo __METHOD__;
    }
}

$p = new Person();
$p->getName(); //输出Person::getName

在上面的示例中,我们创建了一个Person类,并实例化了它。然后,我们调用了Person类的getName方法,并在方法中输出了__METHOD__常量的值。

当我们调用getName方法时,__METHOD__常量将返回"Person::getName",这正是我们需要的当前方法的名字。

方法二:使用get_class_methods函数

另一种获取当前类方法的方法是使用PHP内置函数get_class_methods。这个函数可以返回一个类中的所有公共方法的数组,并且这个数组中键名是方法名,值是一个引用当前类实例的可调用对象。

以下是一个示例代码:

class Person {
    public function getName() {
        echo "My name is Joe";
    }
}

$p = new Person();
$methods = get_class_methods($p);
var_dump($methods);

在上面的示例中,我们创建了一个Person类,并实例化了它。然后,我们使用get_class_methods函数获取了Person类中的所有方法,并将其输出到控制台。

当我们运行上面的代码时,将会输出get_class_methods函数的返回结果,也就是类中所有公共方法的数组,如下所示:

array(1) {
  [0]=>
  string(7) "getName"
}

在这个数组中,键名为方法名"getName",值是一个当前类实例的可调用对象。

总结

以上就是两种PHP获取当前类的方法的方式。我们可以选择使用__METHOD__魔术常量或者内置函数get_class_methods来获取当前类的所有方法。对于初学者而言,推荐使用__METHOD__魔术常量来获取当前类的方法,因为它更为简单易懂。而对于有一定经验的PHP开发者来说,get_class_methods函数会更加常见和实用。

以上是php怎么获取当前类的方法(两种方式)的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn