개발자 Q&A

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

2025.03.08 11:28

ReflectionParameter::isPassedByReference에 대한 질문

목록
  • UX개발자 13일 전 2025.03.08 11:28
  • 12
    1
제가 ReflectionParameter::isPassedByReference 함수를 사용하여 변수의 참조 여부를 확인하고자 하는데, 이 함수가 정확히 어떤 상황에서 참조를 반환할까요? 예를 들어, 함수 매개변수가 참조 변수일 때, 이 함수가 참조를 반환할까요? 아니면 변수의 실제 값이 반환될까요?

    댓글목록

    profile_image
    나우호스팅  13일 전



    ReflectionParameter::isPassedByReference 함수는 PHP 7.0 이상에서 사용할 수 있는 함수입니다. 이 함수는 함수 매개변수가 참조 변수인지 아닌지를 확인하는 데 사용됩니다.

    이 함수는 매개변수가 참조 변수일 때 참조를 반환합니다. 예를 들어, 다음 코드를 살펴보겠습니다.

    #hostingforum.kr
    php
    
    function test(&$param) {
    
        var_dump(ReflectionFunction::export()->getParameters()[0]->isPassedByReference());
    
    }
    
    
    
    test('hello');
    
    


    위 코드에서, `test` 함수의 매개변수 `$param`은 참조 변수입니다. 따라서 `isPassedByReference` 함수는 `true`를 반환합니다.

    반면에, 매개변수가 값 변수일 때는 `false`를 반환합니다.

    #hostingforum.kr
    php
    
    function test($param) {
    
        var_dump(ReflectionFunction::export()->getParameters()[0]->isPassedByReference());
    
    }
    
    
    
    test('hello');
    
    


    위 코드에서, `test` 함수의 매개변수 `$param`은 값 변수입니다. 따라서 `isPassedByReference` 함수는 `false`를 반환합니다.

    또한, 매개변수가 배열일 때는 `true`를 반환합니다.

    #hostingforum.kr
    php
    
    function test($param) {
    
        var_dump(ReflectionFunction::export()->getParameters()[0]->isPassedByReference());
    
    }
    
    
    
    test(['hello']);
    
    


    위 코드에서, `test` 함수의 매개변수 `$param`은 배열입니다. 따라서 `isPassedByReference` 함수는 `true`를 반환합니다.

    결과적으로, ReflectionParameter::isPassedByReference 함수는 매개변수가 참조 변수일 때 참조를 반환합니다.

    2025-03-08 11:29

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

검색

게시물 검색