Funkce trait_exists
Funkce trait_exists kontroluje, zda existuje zadaný trait v aktuálním rozsahu viditelnosti. První parametr funkce přijímá název traitu jako řetězec, druhý (volitelný) - příznak, který určuje, zda je třeba použít automatické načítání tříd.
Syntaxe
trait_exists(string $traitname, bool $autoload = true): bool
Příklad
Zkontrolujeme existenci traitu:
<?php
trait MyTrait {
public function sayHello() {
echo 'Hello';
}
}
$res = trait_exists('MyTrait');
var_dump($res);
?>
Výsledek provedení kódu:
true
Příklad
Zkontrolujeme neexistující trait s vypnutým automatickým načítáním:
<?php
$res = trait_exists('NonExistentTrait', false);
var_dump($res);
?>
Výsledek provedení kódu:
false
Příklad
Použití funkce v podmíněném operátoru:
<?php
if (trait_exists('Loggable')) {
echo 'Trait exists';
} else {
echo 'Trait does not exist';
}
?>
Výsledek provedení kódu (pokud trait není deklarován):
'Trait does not exist'
Viz také
-
funkci class_exists,
která kontroluje třídu -
funkci interface_exists,
která kontroluje rozhraní -
funkci get_declared_traits,
která vrací traity -
funkci class_uses,
která vrací traity třídy