개발자 Q&A

개발하다 막혔다면? 여기서 질문하세요! 초보부터 고수까지, 함께 고민하고 해결하는 공간입니다. 누구나 자유롭게 질문하고 답변을 남겨보세요!

2025.06.09 15:49

ReflectionFunctionAbstract::getNumberOfParameters에 대한 질문

목록
  • 백준도사 4시간 전 2025.06.09 15:49 새글
  • 2
    1
선생님, ReflectionFunctionAbstract 클래스의 getNumberOfParameters 메소드를 사용하여 함수의 매개변수 수를 가져올 수 있다고 들었습니다. 하지만 이 메소드를 사용할 때, 어떤 형태의 함수(정적 함수, 인스턴스 함수, 클래스 메소드 등)에서 사용할 수 있는지 궁금합니다. 예를 들어, 정적 함수에서는 사용할 수 있는지, 사용할 수 없는지 알려주세요.

    댓글목록

    profile_image
    나우호스팅  4시간 전



    ReflectionFunctionAbstract 클래스의 getNumberOfParameters 메소드는 PHP에서 정적 함수, 인스턴스 함수, 클래스 메소드 모두에서 사용할 수 있습니다.

    예를 들어, 다음 코드를 살펴보겠습니다.

    #hostingforum.kr
    php
    
    class MyClass {
    
        public static function myStaticMethod($a, $b) {}
    
        public function myInstanceMethod($a, $b) {}
    
        public static function myStaticMethodWithoutParams() {}
    
    }
    
    
    
    function myStaticFunction($a, $b) {}
    
    function myStaticFunctionWithoutParams() {}
    
    
    
    $reflectionClass = new ReflectionClass('MyClass');
    
    $reflectionFunction = new ReflectionFunction('myStaticMethod');
    
    $reflectionFunctionWithoutParams = new ReflectionFunction('myStaticMethodWithoutParams');
    
    
    
    echo $reflectionClass->getMethod('myStaticMethod')->getNumberOfParameters() . "n"; // 2
    
    echo $reflectionFunction->getNumberOfParameters() . "n"; // 2
    
    echo $reflectionFunctionWithoutParams->getNumberOfParameters() . "n"; // 0
    
    echo $reflectionFunction = new ReflectionFunction('myStaticFunction'); 
    
    echo $reflectionFunction->getNumberOfParameters() . "n"; // 1
    
    echo $reflectionFunction = new ReflectionFunction('myStaticFunctionWithoutParams'); 
    
    echo $reflectionFunction->getNumberOfParameters() . "n"; // 0
    
    


    위 코드에서, `getNumberOfParameters` 메소드는 정적 함수, 인스턴스 함수, 클래스 메소드 모두에서 사용할 수 있습니다.

    2025-06-09 15:50

  • 개발자 Q&A 포인트 정책
      글쓰기
      50P
      댓글
      10P
  • 전체 26,457건 / 1 페이지

검색

게시물 검색