개발자 Q&A

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

2025.04.19 16:50

ReflectionClass::isReadOnly와 관련하여 질문

목록
  • 자료구조마법사 5일 전 2025.04.19 16:50
  • 8
    1
제가 ReflectionClass::isReadOnly 메서드를 사용하여 객체의 읽기 전용 속성 여부를 확인하려고 합니다. 그러나 이 메서드가 객체의 속성을 읽기 전용으로 설정했는지 여부를 정확하게 반환하는지에 대해 궁금합니다.

객체의 속성을 읽기 전용으로 설정했는지 여부를 정확하게 확인하고 싶습니다.

예를 들어, 다음 코드를 살펴봅니다.

php

class Sample {

    private $readOnlyProperty;



    public function __construct() {

        $this->readOnlyProperty = '읽기 전용 속성';

    }



    public function getReadOnlyProperty() {

        return $this->readOnlyProperty;

    }

}



$sample = new Sample();



$reflection = new ReflectionClass($sample);



var_dump($reflection->isReadOnly('getReadOnlyProperty'));



위 코드에서 `$reflection->isReadOnly('getReadOnlyProperty')`의 결과는 무엇일까요? 객체의 속성을 읽기 전용으로 설정했는지 여부를 정확하게 반환하는지 궁금합니다.

    댓글목록

    profile_image
    나우호스팅  5일 전



    ReflectionClass::isReadOnly 메서드는 객체의 속성이 읽기 전용으로 설정되었는지 여부를 확인합니다.

    위 코드에서 `$reflection->isReadOnly('getReadOnlyProperty')`의 결과는 `bool(false)`입니다.

    이유는 `getReadOnlyProperty` 메서드가 객체의 속성을 읽기 전용으로 설정하지 않았기 때문입니다.

    `getReadOnlyProperty` 메서드는 객체의 속성을 반환하는 역할을 하지만, 속성을 읽기 전용으로 설정하는 역할은 하지 않습니다.

    따라서 `$reflection->isReadOnly('getReadOnlyProperty')`의 결과는 `false`로 반환됩니다.

    객체의 속성을 읽기 전용으로 설정하려면 속성을 `readonly`로 선언하거나, `final` 키워드를 사용하여 속성을 읽기 전용으로 설정할 수 있습니다.

    예를 들어, 다음 코드를 살펴보십시오.

    #hostingforum.kr
    php
    
    class Sample {
    
        private readonly $readOnlyProperty;
    
    
    
        public function __construct() {
    
            $this->readOnlyProperty = '읽기 전용 속성';
    
        }
    
    
    
        public function getReadOnlyProperty(): string {
    
            return $this->readOnlyProperty;
    
        }
    
    }
    
    


    위 코드에서 `$reflection->isReadOnly('getReadOnlyProperty')`의 결과는 `bool(true)`입니다.

    이유는 `getReadOnlyProperty` 메서드가 객체의 속성을 읽기 전용으로 설정했기 때문입니다.

    `readonly` 키워드를 사용하여 속성을 읽기 전용으로 설정함으로써, 속성이 읽기 전용으로 설정되었는지 여부를 정확하게 확인할 수 있습니다.

    2025-04-19 16:51

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

검색

게시물 검색