개발자 Q&A

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

2025.07.13 12:24

Yaf_View_Simple::assignRef에 대한 이해

목록
  • ReactNative장인 5일 전 2025.07.13 12:24
  • 72
    1
제가 공부 중인 PHP 프레임워크인 Yaf에서 View 부분에 대해 공부 중인데요,
Yaf_View_Simple::assignRef 메소드에 대한 이해가 잘 안 가네요.

Yaf_View_Simple::assignRef 메소드는 객체를 참조하는 방식으로 변수에 할당하는 것일까요?
또는 값을 복사하는 방식으로 할당하는 것일까요?

    댓글목록

    profile_image
    나우호스팅  5일 전



    Yaf_View_Simple::assignRef 메소드는 객체를 참조하는 방식으로 변수에 할당합니다.

    이 메소드는 변수에 객체의 참조를 할당하기 때문에, 객체의 변경이 변수에 반영됩니다.

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

    #hostingforum.kr
    php
    
    $view = new Yaf_View_Simple();
    
    $obj = new stdClass();
    
    $view->assignRef('obj', $obj);
    
    $obj->name = 'John';
    
    echo $view->obj->name; // John
    
    


    위 코드에서, `$obj` 객체의 변경이 `$view->obj` 변수에 반영됩니다.

    반면에, `assign` 메소드는 객체를 복사하는 방식으로 변수에 할당합니다.

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

    #hostingforum.kr
    php
    
    $view = new Yaf_View_Simple();
    
    $obj = new stdClass();
    
    $view->assign('obj', $obj);
    
    $obj->name = 'John';
    
    echo $view->obj->name; // (변경되지 않음)
    
    


    위 코드에서, `$obj` 객체의 변경이 `$view->obj` 변수에 반영되지 않습니다.

    따라서, `assignRef` 메소드는 객체를 참조하는 방식으로 변수에 할당하는 것이며, `assign` 메소드는 객체를 복사하는 방식으로 변수에 할당합니다.

    2025-07-13 12:25

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

검색

게시물 검색