Функција trait_exists

Функцијата trait_exists проверува дали постои наведениот трејт во тековниот опсег на видливост. Како прв параметар функцијата прифаќа име на трејт како стринг, втор (незадолжителен) - знаме, кое укажува дали треба да се користи автоматско вчитување на класи.

Синтакса

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

Пример

Да провериме дали постои трејт:

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

Резултат од извршување на кодот:

phptrue

Пример

Да провериме непостоечки трејт со оневозможено автоматско вчитување:

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

Резултат од извршување на кодот:

phpfalse

Пример

Употреба на функцијата во условен оператор:

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

Резултат од извршување на кодот (ако трејтот не е деклариран):

php'Trait does not exist'

Погледнете ги исто така

  • функцијата class_exists,
    која проверува класа
  • функцијата interface_exists,
    која проверува интерфејс
  • функцијата get_declared_traits,
    која ги враќа трејтовите
  • функцијата class_uses,
    која ги враќа трејтовите на класата