php7里面get_class_methods
默认获取本类和父类的所有public方法,我在生成接口文档的时候,只需要本类的公开方法,因此需要过滤掉父类的public方法,直接上代码:
/**
* @desc 仅仅获取这个类的方法,不要父类的
* @param class int Y N 类名
* @return array3 array 本类的所有方法构成的一个数组
*/
public function get_this_class_methods($class) {
$array1 = get_class_methods($class);
if ($parent_class = get_parent_class($class)) {
$array2 = get_class_methods($parent_class);
$array3 = array_diff($array1, $array2);
} else {
$array3 = $array1;
}
return $array3;
}
备注:
$class是由:$class = new ReflectionClass($class_name);或者new class_name()生成的。
参考:http://php.net/manual/zh/function.get-class-methods.php
http://php.net/manual/zh/class.reflectionclass.php