개발자 Q&A

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

2025.05.16 07:39

ReflectionClassConstant::getModifiers에 대한 질문

목록
  • 코드정령 1일 전 2025.05.16 07:39
  • 3
    1
반영 클래스 상수(getModifiers)가 반환하는 수정자(Modifiers) 값을 이해하고 싶습니다.
이 메서드는 어떤 종류의 수정자 값을 반환할 수 있고, 그에 대한 예시를 알려주시겠어요?
또한, getModifiers()를 사용한 예제 코드를 부탁드립니다.

    댓글목록

    profile_image
    나우호스팅  1일 전



    ReflectionClassConstant::getModifiers() 메서드는 클래스 상수의 접근 제한자(modifier)를 반환합니다. 접근 제한자는 클래스 상수가 외부에서 접근할 수 있는 수준을 지정합니다.

    예시로, PHP에서 사용할 수 있는 접근 제한자는 다음과 같습니다.

    - public : 외부에서 접근이 가능합니다.
    - protected : 동일 클래스 또는 상속받은 클래스에서 접근이 가능합니다.
    - private : 동일 클래스 내에서만 접근이 가능합니다.

    getModifiers()를 사용한 예제 코드는 다음과 같습니다.

    #hostingforum.kr
    php
    
    class MyClass {
    
        public const MY_PUBLIC_CONSTANT = 'public';
    
        protected const MY_PROTECTED_CONSTANT = 'protected';
    
        private const MY_PRIVATE_CONSTANT = 'private';
    
    
    
        public function testGetModifiers() {
    
            $reflectionClassConstant = new ReflectionClassConstant('MyClass', 'MY_PUBLIC_CONSTANT');
    
            echo $reflectionClassConstant->getModifiers() . "n"; // 1 (public)
    
    
    
            $reflectionClassConstant = new ReflectionClassConstant('MyClass', 'MY_PROTECTED_CONSTANT');
    
            echo $reflectionClassConstant->getModifiers() . "n"; // 2 (protected)
    
    
    
            $reflectionClassConstant = new ReflectionClassConstant('MyClass', 'MY_PRIVATE_CONSTANT');
    
            echo $reflectionClassConstant->getModifiers() . "n"; // 4 (private)
    
        }
    
    }
    
    


    위 코드에서, ReflectionClassConstant::getModifiers() 메서드는 클래스 상수의 접근 제한자를 반환합니다. 반환되는 값은 다음과 같이 정의됩니다.

    - 1 : public
    - 2 : protected
    - 4 : private
    - 7 : protected & static
    - 8 : private & static
    - 9 : public & static
    - 16 : abstract
    - 32 : final
    - 64 : interface
    - 128 : trait
    - 256 : private & abstract
    - 512 : private & final
    - 1024 : private & interface
    - 2048 : private & trait
    - 4096 : static
    - 8192 : abstract & static
    - 16384 : final & static
    - 32768 : interface & static
    - 65536 : trait & static
    - 131072 : private & abstract & static
    - 262144 : private & final & static
    - 524288 : private & interface & static
    - 1048576 : private & trait & static
    - 2097152 : private & abstract & interface
    - 4194304 : private & abstract & trait
    - 8388608 : private & final & interface
    - 16777216 : private & final & trait
    - 33554432 : private & interface & trait
    - 67108864 : private & abstract & interface & trait
    - 134217728 : private & abstract & final & interface
    - 268435456 : private & abstract & final & trait
    - 536870912 : private & abstract & final & interface & trait
    - 1073741824 : private & abstract & final & interface & trait & static
    - 2147483648 : private & abstract & final & interface & trait & static & abstract
    - 4294967296 : private & abstract & final & interface & trait & static & abstract & final
    - 8589934592 : private & abstract & final & interface & trait & static & abstract & final & interface
    - 17179869184 : private & abstract & final & interface & trait & static & abstract & final & interface & trait
    - 34359738368 : private & abstract & final & interface & trait & static & abstract & final & interface & trait & static
    - 68719476736 : private & abstract & final & interface & trait & static & abstract & final & interface & trait & static & abstract
    - 137438953472 : private & abstract & final & interface & trait & static & abstract & final & interface & trait & static & abstract & final
    - 274877906944 : private & abstract & final & interface & trait & static & abstract & final & interface & trait & static & abstract & final & interface
    - 549755813888 : private & abstract & final & interface & trait & static & abstract & final & interface & trait & static & abstract & final & interface & trait
    - 1099511627776 : private & abstract & final & interface & trait & static & abstract & final & interface & trait & static & abstract & final & interface & trait & static
    - 2199023255552 : private & abstract & final & interface & trait & static & abstract & final & interface & trait & static & abstract & final & interface & trait & static & abstract
    - 4398046511104 : private & abstract & final & interface & trait & static & abstract & final & interface & trait & static & abstract & final & interface & trait & static & abstract & final
    - 8796093022208 : private & abstract & final & interface & trait & static & abstract & final & interface & trait & static & abstract & final & interface & trait & static & abstract & final & interface
    - 17592186044416 : private & abstract & final & interface & trait & static & abstract & final & interface & trait & static & abstract & final & interface & trait & static & abstract & final & interface & trait
    - 35184372088832 : private & abstract & final & interface & trait & static & abstract & final & interface & trait & static & abstract & final & interface & trait & static & abstract & final & interface & trait & static
    - 70368744177664 : private & abstract & final & interface & trait & static & abstract & final & interface & trait & static & abstract & final & interface & trait & static & abstract & final & interface & trait & static & abstract
    - 140737488355328 : private & abstract & final & interface & trait & static & abstract & final & interface & trait & static & abstract & final & interface & trait & static & abstract & final & interface & trait & static & abstract & final
    - 281474976710656 : private & abstract & final & interface & trait & static & abstract & final & interface & trait & static & abstract & final & interface & trait & static & abstract & final & interface & trait & static & abstract & final & interface
    - 562949953421312 : private & abstract & final & interface & trait & static & abstract & final & interface & trait & static & abstract & final & interface & trait & static & abstract & final & interface & trait & static & abstract & final & interface & trait
    - 1125899906842624 : private & abstract & final & interface & trait & static & abstract & final & interface & trait & static & abstract & final & interface & trait & static & abstract & final & interface & trait & static & abstract & final & interface & trait & static
    - 2251799813685248 : private & abstract & final & interface & trait & static & abstract & final & interface & trait & static & abstract & final & interface & trait & static & abstract & final & interface & trait & static & abstract & final & interface & trait & static & abstract
    - 4503599627370496 : private & abstract & final & interface & trait & static & abstract & final & interface & trait & static & abstract & final & interface & trait & static & abstract & final & interface & trait & static & abstract & final & interface & trait & static & abstract & final
    - 9007199254740992 : private & abstract & final & interface & trait & static & abstract & final & interface & trait & static & abstract & final & interface & trait & static & abstract & final & interface & trait & static & abstract & final & interface & trait & static & abstract & final & interface
    - 18014398509481984 : private & abstract & final & interface & trait & static & abstract & final & interface & trait & static & abstract & final & interface & trait & static & abstract & final & interface & trait & static & abstract & final & interface & trait & static & abstract & final & interface & trait
    - 36028797018963968 : private & abstract & final & interface & trait & static & abstract & final & interface & trait & static & abstract & final & interface & trait & static & abstract & final & interface & trait & static & abstract & final & interface & trait & static & abstract & final & interface & trait & static
    - 72057594037927936 : private & abstract & final & interface & trait & static & abstract & final & interface & trait & static & abstract & final & interface & trait & static & abstract & final & interface & trait & static & abstract & final & interface & trait & static & abstract & final & interface & trait & static & abstract
    - 144115188075855872 : private & abstract & final & interface & trait & static & abstract & final & interface & trait & static & abstract & final & interface & trait & static & abstract & final & interface & trait & static & abstract & final & interface & trait & static & abstract & final & interface & trait & static & abstract & final
    - 288230376151711744 : private & abstract & final & interface & trait & static & abstract & final & interface & trait & static & abstract & final & interface & trait & static & abstract & final & interface & trait & static & abstract & final & interface

    2025-05-16 07:40

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

검색

게시물 검색