개발자 Q&A

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

2025.07.31 18:05

ReflectionFunctionAbstract::returnsReference에 대한 이해가 필요합니다.

목록
  • 리액트광 1일 전 2025.07.31 18:05
  • 4
    1
제가 배우고 있는 PHP의 ReflectionFunctionAbstract 클래스에서 returnsReference 메소드를 사용할 때, 이 메소드가 반환하는 결과값을 이해하지 못하고 있습니다.

다른 메소드와 마찬가지로 returnsReference 메소드는 ReflectionFunctionAbstract 객체의 속성을 반환합니다. 하지만, 이 메소드는 특정한 경우에만 true를 반환하는 것 같습니다.

returnsReference 메소드의 반환값이 true일 경우, 어떤 상황인지 궁금합니다.

제가 올바르게 이해하고 있는 것을 알려주시면 감사하겠습니다.

    댓글목록

    profile_image
    나우호스팅  1일 전



    returnsReference 메소드는 ReflectionFunctionAbstract 객체의 속성을 반환합니다. 이 메소드는 특정한 경우에만 true를 반환합니다.

    returnsReference 메소드는 PHP에서 사용자 정의 함수나 메소드가 객체를 반환할 때 true를 반환합니다. 예를 들어, 다음과 같은 함수가 있다고 가정해 보겠습니다.

    #hostingforum.kr
    php
    
    function getPerson() {
    
        return new Person();
    
    }
    
    


    이 경우, ReflectionFunctionAbstract 객체를 생성하고 returnsReference 메소드를 호출하면 true가 반환됩니다.

    #hostingforum.kr
    php
    
    $reflection = new ReflectionFunction('getPerson');
    
    echo $reflection->returnsReference(); // true
    
    


    반면에, 숫자나 문자열과 같은 기본 타입을 반환하는 함수는 false를 반환합니다.

    #hostingforum.kr
    php
    
    function getNumber() {
    
        return 10;
    
    }
    
    
    
    $reflection = new ReflectionFunction('getNumber');
    
    echo $reflection->returnsReference(); // false
    
    


    또한, 객체를 반환하는 함수가 아닌, 객체의 속성을 반환하는 함수는 false를 반환합니다.

    #hostingforum.kr
    php
    
    function getPersonName() {
    
        $person = new Person();
    
        return $person->getName();
    
    }
    
    
    
    $reflection = new ReflectionFunction('getPersonName');
    
    echo $reflection->returnsReference(); // false
    
    


    따라서, returnsReference 메소드는 PHP에서 사용자 정의 함수나 메소드가 객체를 반환할 때 true를 반환합니다.

    2025-07-31 18:06

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

검색

게시물 검색