Funkcija trait_exists
Funkcija trait_exists proverava da li navedeni trejt postoji u trenutnom opsegu vidljivosti. Kao prvi parametar funkcija prima ime trejta u obliku stringa, kao drugi (opcioni) - flag koji ukazuje da li treba koristiti automatsko učitavanje klasa.
Sintaksa
trait_exists(string $traitname, bool $autoload = true): bool
Primer
Proverimo postojanje trejta:
<?php
trait MyTrait {
public function sayHello() {
echo 'Hello';
}
}
$res = trait_exists('MyTrait');
var_dump($res);
?>
Rezultat izvršavanja koda:
true
Primer
Proverimo nepostojeći trejt sa isključenim automatskim učitavanjem:
<?php
$res = trait_exists('NonExistentTrait', false);
var_dump($res);
?>
Rezultat izvršavanja koda:
false
Primer
Korišćenje funkcije u uslovnom izrazu:
<?php
if (trait_exists('Loggable')) {
echo 'Trait exists';
} else {
echo 'Trait does not exist';
}
?>
Rezultat izvršavanja koda (ako trejt nije deklarisan):
'Trait does not exist'
Pogledajte takođe
-
funkciju class_exists,
koja proverava klasu -
funkciju interface_exists,
koja proverava interfejs -
funkciju get_declared_traits,
koja vraća trejtove -
funkciju class_uses,
koja vraća trejtove klase