获取方法:1、使用“__FUNCTION__”,可获取当前方法的名称;2、使用“__METHOD__”,可获取当前的方法名(包括类名);3、使用get_class_methods()函数,可获取指定类的所有的方法名。

本教程操作环境:windows7系统、PHP7.1版、DELL G3电脑

php获取方法名称

1、使用魔术常量__FUNCTION__

__FUNCTION__:当前函数(或方法)的名称;

<?php
header("Content-type:text/html;charset=utf-8");
class Website {
	public function demo() {
		echo '成员方法名'.__FUNCTION__;
	}
}
$student = new Website();
$student -> demo();
?>

1.png

2、使用魔术常量__METHOD__

__METHOD__:当前的方法名(包括类名);返回该方法被定义时的名字(区分大小写)。

<?php
header("Content-type:text/html;charset=utf-8");
class Website {
	public function demo() {
		echo '类名+方法名'.__METHOD__;
	}
}
$student = new Website();
$student -> demo();
?>

2.png

3、get_class_methods()函数

get_class_methods — 获取类的所有的方法名,并且组成一个数组

get_class_methods(mixed $class_name): array

返回由 class_name 指定的类中定义的方法名所组成的数组。如果出错,则返回 null。

示例:

<?php

class myclass {
    // constructor
    function myclass()
    {
        return(true);
    }

    // method 1
    function myfunc1()
    {
        return(true);
    }

    // method 2
    function myfunc2()
    {
        return(true);
    }
}

$class_methods = get_class_methods('myclass');
// or
$class_methods = get_class_methods(new myclass());

foreach ($class_methods as $method_name) {
    echo "$method_name <br>";
}

?>

3.png


php怎么获取方法名称