개발자 Q&A

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

2025.05.24 04:11

ReflectionFunctionAbstract::returnsReference 이해 도움 부탁드립니다.

목록
  • 앵귤러도사 4일 전 2025.05.24 04:11
  • 7
    1
저는 ReflectionFunctionAbstract 클래스를 사용하여 함수의 정보를 추출 중인데, returnsReference 메서드의 동작에 대해 이해가 잘 안됩니다.

returnsReference 메서드는 함수가 참조 타입을 반환하는지 여부를 반환하는 것 같아요. 하지만, 메서드에 대한 설명을 찾을 수 없어서 정확한 동작을 이해하지 못하고 있습니다.

제가 사용하는 코드는 다음과 같습니다.

php

function test() {

    return 'hello';

}



$reflection = new ReflectionFunction('test');

var_dump($reflection->returnsReference());



위 코드에서 test 함수는 string 타입을 반환합니다. 하지만, returnsReference 메서드는 false를 반환하는 것 같아요.

returnsReference 메서드가 참조 타입을 반환하는지 여부를 어떻게 판단하는지 알려주시면 감사하겠습니다.

    댓글목록

    profile_image
    나우호스팅  4일 전



    returnsReference 메서드는 함수가 참조 타입을 반환하는지 여부를 반환하는 메서드입니다.

    PHP에서 참조 타입은 객체, 배열, resource를 의미합니다.

    위 코드에서 test 함수는 string 타입을 반환하는 함수입니다. 하지만, returnsReference 메서드는 false를 반환하는 이유는 string 타입이 참조 타입이 아니기 때문입니다.

    returnsReference 메서드는 함수가 참조 타입을 반환하는지 여부를 판단하는 데 사용되는 규칙을 따릅니다.

    1. 함수가 객체를 반환하는 경우 참조 타입을 반환합니다.
    2. 함수가 배열을 반환하는 경우 참조 타입을 반환합니다.
    3. 함수가 resource를 반환하는 경우 참조 타입을 반환합니다.
    4. 함수가 기본 타입(예: int, float, string, bool)을 반환하는 경우 참조 타입이 아닙니다.

    위 코드에서 test 함수는 string 타입을 반환하는 함수이므로 returnsReference 메서드는 false를 반환하는 것입니다.

    2025-05-24 04:12

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

검색

게시물 검색