通过反射机制,返回PHP所有方法

Posted by

获取php类的方法有get_class_methods(),但这个只能获取public类型的。

获取private类型的需要用到php中的反射类ReflectionClass(),例:

function get_all_class_methods($class){
$r = new ReflectionClass($class);
foreach($r->getMethods() as $k=>$v){
$methods[$k][‘name’] = $v->name;
$methods[$k][‘class’] = $v->class;
$methods[$k][‘type’] = ‘public’;
if($v->isPrivate()){
$methods[$k][‘type’] = ‘private’;
}
if($v->isProtected()){
$methods[$k][‘type’] = ‘protected’;
}
}
return $methods;
}

也可以使用映射ReflectionClass:export()静态方法获取任何一个php类信息。

获取方式:ReflectionClass:export($className);

 

 

Leave a Reply

电子邮件地址不会被公开。 必填项已用*标注

此站点使用Akismet来减少垃圾评论。了解我们如何处理您的评论数据