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

phptrait_exists(string $traitname, bool $autoload = true): bool

Příklad

Zkontrolujeme existenci traitu:

php<?php
  trait MyTrait {
    public function sayHello() {
      echo 'Hello';
    }
  }
  
  $res = trait_exists('MyTrait');
  var_dump($res);
?>

Výsledek provedení kódu:

phptrue

Příklad

Zkontrolujeme neexistující trait s vypnutým automatickým načítáním:

php<?php
  $res = trait_exists('NonExistentTrait', false);
  var_dump($res);
?>

Výsledek provedení kódu:

phpfalse

Příklad

Použití funkce v podmíněném operátoru:

php<?php
  if (trait_exists('Loggable')) {
    echo 'Trait exists';
  } else {
    echo 'Trait does not exist';
  }
?>

Výsledek provedení kódu (pokud trait není deklarován):

php'Trait does not exist'

Viz také