함수 trait_exists
함수 trait_exists는 현재 스코프에 지정된 트레이트가 존재하는지 확인합니다. 첫 번째 매개변수로 문자열 형태의 트레이트 이름을 받고, 두 번째 매개변수(선택사항)로 클래스 자동 로딩 사용 여부를 나타내는 플래그를 받습니다.
구문
trait_exists(string $traitname, bool $autoload = true): bool
예제
트레이트 존재 여부 확인하기:
<?php
trait MyTrait {
public function sayHello() {
echo 'Hello';
}
}
$res = trait_exists('MyTrait');
var_dump($res);
?>
코드 실행 결과:
true
예제
자동 로딩을 비활성화하고 존재하지 않는 트레이트 확인하기:
<?php
$res = trait_exists('NonExistentTrait', false);
var_dump($res);
?>
코드 실행 결과:
false
예제
조건문에서 함수 사용하기:
<?php
if (trait_exists('Loggable')) {
echo 'Trait exists';
} else {
echo 'Trait does not exist';
}
?>
코드 실행 결과 (트레이트가 선언되지 않은 경우):
'Trait does not exist'
함께 보기
-
class_exists 함수,
클래스를 확인합니다 -
interface_exists 함수,
인터페이스를 확인합니다 -
get_declared_traits 함수,
트레이트를 반환합니다 -
class_uses 함수,
클래스의 트레이트를 반환합니다