Запись на курсы по HTML, CSS, JavaScript, PHP, Python, фреймворкам и CMS,
а также: помощь в поиске работы и заказов, стажировка на реальных проектах→
316 of 410 menu
В течении недели будет ОБНОВЛЕНИЕ УЧЕБНИКОВ PHP. Поменяется структура! Подробнее по ссылке.

Функция trait_exists

Функция trait_exists проверяет, существует ли указанный трейт в текущей области видимости. Первым параметром функция принимает имя трейта в виде строки, вторым (необязательным) - флаг, указывающий нужно ли использовать автозагрузку классов.

Синтаксис

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

Пример

Проверим существование трейта:

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

Результат выполнения кода:

true

Пример

Проверим несуществующий трейт с отключенной автозагрузкой:

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

Результат выполнения кода:

false

Пример

Использование функции в условном операторе:

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

Результат выполнения кода (если трейт не объявлен):

'Trait does not exist'

Смотрите также

  • функцию class_exists,
    которая проверяет класс
  • функцию interface_exists,
    которая проверяет интерфейс
  • функцию get_declared_traits,
    которая возвращает трейты
  • функцию class_uses,
    которая возвращает трейты класса
byenru