라이브러리
[PHP] ReflectionMethod::isPublic - 메서드가 공개인지 확인합니다.
ReflectionMethod::isPublic
PHP ReflectionMethod 클래스의 `isPublic` 메소드는 대상 메소드가 public 인지 확인하는 메소드입니다.
# 사용법
#hostingforum.kr
php
$reflectionMethod = new ReflectionMethod($class, $method);
if ($reflectionMethod->isPublic()) {
// public 메소드
} else {
// private 메소드, protected 메소드, 또는 내부 메소드
}
# 예제
#hostingforum.kr
php
class MyClass {
public function publicMethod() {
echo "public method
";
}
private function privateMethod() {
echo "private method
";
}
protected function protectedMethod() {
echo "protected method
";
}
static function staticMethod() {
echo "static method
";
}
}
$reflectionClass = new ReflectionClass('MyClass');
$reflectionMethod1 = $reflectionClass->getMethod('publicMethod');
$reflectionMethod2 = $reflectionClass->getMethod('privateMethod');
$reflectionMethod3 = $reflectionClass->getMethod('protectedMethod');
$reflectionMethod4 = $reflectionClass->getMethod('staticMethod');
echo $reflectionMethod1->isPublic() ? "true" : "false"; // true
echo "
";
echo $reflectionMethod2->isPublic() ? "true" : "false"; // false
echo "
";
echo $reflectionMethod3->isPublic() ? "true" : "false"; // false
echo "
";
echo $reflectionMethod4->isPublic() ? "true" : "false"; // false
# 결과
#hostingforum.kr
true
false
false
false
# 참고
- ReflectionMethod 클래스는 PHP 5.0.0 부터 사용할 수 있습니다.
- ReflectionMethod 클래스는 대상 클래스의 메소드를 반영합니다.
- 대상 메소드는 public, private, protected, 또는 내부 메소드일 수 있습니다.
- `isPublic` 메소드는 대상 메소드가 public 인지 확인합니다.
- 대상 메소드가 private, protected, 또는 내부 메소드일 경우 false를 반환합니다.
이 예제는 ReflectionMethod 클래스의 `isPublic` 메소드를 사용하여 public 메소드, private 메소드, protected 메소드, 또는 내부 메소드를 구분하는 방법을 보여줍니다.
-
- 나우호스팅 @pcs8404
-
호스팅포럼 화이팅!
댓글목록
등록된 댓글이 없습니다.