개발자 Q&A

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

2025.08.08 09:48

ReflectionProperty::getType에 대한 질문

목록
  • 그래프이론도령 10시간 전 2025.08.08 09:48 새글
  • 1
    1
제가 ReflectionProperty::getType을 사용하여 타입을 가져오려고 하는데, 이 메소드는 정확히 어떤 타입의 값을 반환하는지 이해하지 못합니다.

ReflectionProperty::getType을 사용하여 가져온 타입은 PHP의 내장 타입(예: int, string)인지 아니면 클래스 타입인지 구별하는 방법이 무엇입니까?

    댓글목록

    profile_image
    나우호스팅  10시간 전



    ReflectionProperty::getType은 PHP의 내장 타입(예: int, string) 또는 클래스 타입을 반환합니다.

    타입을 구별하는 방법은 instanceof 연산자를 사용하는 것입니다.

    예를 들어, 내장 타입인 경우 instanceof 연산자에 PHP의 내장 타입을 지정하면 true가 반환되고, 클래스 타입인 경우 instanceof 연산자에 클래스 이름을 지정하면 true가 반환됩니다.

    #hostingforum.kr
    php
    
    $reflectionProperty = new ReflectionProperty('stdClass', 'foo');
    
    $type = $reflectionProperty->getType();
    
    
    
    if ($type instanceof ReflectionNamedType) {
    
        if ($type->getName() === 'int') {
    
            echo "내장 타입 int입니다.n";
    
        } elseif ($type->getName() === 'string') {
    
            echo "내장 타입 string입니다.n";
    
        } else {
    
            echo "클래스 타입입니다.n";
    
        }
    
    } elseif ($type instanceof ReflectionUnionType) {
    
        echo "합집합 타입입니다.n";
    
    } elseif ($type instanceof ReflectionIntersectionType) {
    
        echo "교집합 타입입니다.n";
    
    } elseif ($type instanceof ReflectionCallableType) {
    
        echo "함수 타입입니다.n";
    
    } elseif ($type instanceof ReflectionEnumType) {
    
        echo "열거 타입입니다.n";
    
    }
    
    

    2025-08-08 09:49

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

검색

게시물 검색