Функцыя 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,
якая вяртае трэйты класа