Funktionen trait_exists
Funktionen trait_exists kontrollerar om den angivna traiten finns i det aktuella synfältet. Den första parametern tar funktionen namnet på traiten som en sträng, den andra (valfria) - en flagga som indikerar om klassautoladdning ska användas.
Syntax
trait_exists(string $traitname, bool $autoload = true): bool
Exempel
Låt oss kontrollera om en trait finns:
<?php
trait MyTrait {
public function sayHello() {
echo 'Hello';
}
}
$res = trait_exists('MyTrait');
var_dump($res);
?>
Resultat av kodkörning:
true
Exempel
Låt oss kontrollera en trait som inte finns med inaktiverad autoladdning:
<?php
$res = trait_exists('NonExistentTrait', false);
var_dump($res);
?>
Resultat av kodkörning:
false
Exempel
Användning av funktionen i en villkorssats:
<?php
if (trait_exists('Loggable')) {
echo 'Trait exists';
} else {
echo 'Trait does not exist';
}
?>
Resultat av kodkörning (om traiten inte är deklarerad):
'Trait does not exist'
Se även
-
funktionen class_exists,
som kontrollerar en klass -
funktionen interface_exists,
som kontrollerar ett gränssnitt -
funktionen get_declared_traits,
som returnerar trait -
funktionen class_uses,
som returnerar en klass trait