2011-08-27 74 views
1

有没有办法知道对象内部的方法的类型(对不起,如果这不是正确的名称)?想象一下你有一个包含5个方法的对象,其中3个是公开的,其余的是protected/private,你怎么知道一个方法是否公开?获取每种方法的访问/可见性修改器

干杯!

+1

“的** [能见度](http://php.net/manual/en/language.oop5.visibility.php)**的属性或方法的可通过在前面被定义带有关键字_public_,_protected_或_private_的声明。“ – Wiseguy

回答

5

您可以使用反射获取有关类和对象的信息。 看http://www.php.net/manual/en/book.reflection.php

$reflection = new ReflectionClass('TestClass'); 
$aMethods = $reflection->getMethods(); 
var_dump($aMethods[0]->isPublic()); 
+0

谢谢,这就是我需要的:) – yoda