라이브러리

[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 메소드, 또는 내부 메소드를 구분하는 방법을 보여줍니다.
  • profile_image
    나우호스팅 @pcs8404 

    호스팅포럼 화이팅!

    댓글목록

    등록된 댓글이 없습니다.

  • 전체 10,077건 / 279 페이지

검색

게시물 검색