Funkcija trait_exists
Funkcija trait_exists patikrina, ar nurodytas treitas egzistuoja dabartinėje matomumo srityje. Pirmuoju parametru funkcija priima treito pavadinimą kaip eilutę, antruoju (neprivalomu) - vėliavėlę, nurodančią ar reikia naudoti klasių automatinį įkėlimą.
Sintaksė
trait_exists(string $traitname, bool $autoload = true): bool
Pavyzdys
Patikrinkime treito egzistavimą:
<?php
trait MyTrait {
public function sayHello() {
echo 'Hello';
}
}
$res = trait_exists('MyTrait');
var_dump($res);
?>
Kodo vykdymo rezultatas:
true
Pavyzdys
Patikrinkime neegzistuojantį treitą su išjungtu automatiniu įkėlimu:
<?php
$res = trait_exists('NonExistentTrait', false);
var_dump($res);
?>
Kodo vykdymo rezultatas:
false
Pavyzdys
Funkcijos naudojimas sąlyginiame sakinyje:
<?php
if (trait_exists('Loggable')) {
echo 'Trait exists';
} else {
echo 'Trait does not exist';
}
?>
Kodo vykdymo rezultatas (jei treitas neapibrėžtas):
'Trait does not exist'
Taip pat žiūrėkite
-
funkciją class_exists,
kuri patikrina klasę -
funkciją interface_exists,
kuri patikrina interfeisą -
funkciją get_declared_traits,
kuri grąžina treitus -
funkciją class_uses,
kuri grąžina klasės treitus