함수 trait_exists

함수 trait_exists는 현재 스코프에 지정된 트레이트가 존재하는지 확인합니다. 첫 번째 매개변수로 문자열 형태의 트레이트 이름을 받고, 두 번째 매개변수(선택사항)로 클래스 자동 로딩 사용 여부를 나타내는 플래그를 받습니다.

구문

phptrait_exists(string $traitname, bool $autoload = true): bool

예제

트레이트 존재 여부 확인하기:

php<?php
  trait MyTrait {
    public function sayHello() {
      echo 'Hello';
    }
  }
  
  $res = trait_exists('MyTrait');
  var_dump($res);
?>

코드 실행 결과:

phptrue

예제

자동 로딩을 비활성화하고 존재하지 않는 트레이트 확인하기:

php<?php
  $res = trait_exists('NonExistentTrait', false);
  var_dump($res);
?>

코드 실행 결과:

phpfalse

예제

조건문에서 함수 사용하기:

php<?php
  if (trait_exists('Loggable')) {
    echo 'Trait exists';
  } else {
    echo 'Trait does not exist';
  }
?>

코드 실행 결과 (트레이트가 선언되지 않은 경우):

php'Trait does not exist'

함께 보기