2011-08-27 4 views
1

오브젝트 내부의 메소드 유형 (올바른 이름이 아닐 경우 미안)을 알 수있는 방법이 있습니까? 5 개의 메소드를 가진 객체가 있다고 상상해보십시오. 그 중 3 개는 공개이고 나머지는 보호 된/비공개입니다. 메소드가 공개인지를 어떻게 알 수 있습니까?각 메소드의 액세스/가시성 수정 자 가져 오기

건배!

+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

관련 문제