Функција 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,
која враћа трејтове класе