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ė

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

Pavyzdys

Patikrinkime treito egzistavimą:

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

Kodo vykdymo rezultatas:

phptrue

Pavyzdys

Patikrinkime neegzistuojantį treitą su išjungtu automatiniu įkėlimu:

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

Kodo vykdymo rezultatas:

phpfalse

Pavyzdys

Funkcijos naudojimas sąlyginiame sakinyje:

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

Kodo vykdymo rezultatas (jei treitas neapibrėžtas):

php'Trait does not exist'

Taip pat žiūrėkite