Funkcija trait_exists

Funkcija trait_exists pārbauda, vai norādītais treits eksistē pašreizējā redzamības apgabalā. Pirmais parametrs funkcijai ir treita nosaukums virknes veidā, otrais (neobligātais) - karogs, kas norāda, vai ir jāizmanto automātiskā klases ielāde.

Sintakse

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

Piemērs

Pārbaudīsim treita esamību:

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

Koda izpildes rezultāts:

phptrue

Piemērs

Pārbaudīsim neesošu treitu ar izslēgtu automātisko ielādi:

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

Koda izpildes rezultāts:

phpfalse

Piemērs

Funkcijas izmantošana nosacījuma operatorā:

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

Koda izpildes rezultāts (ja treits nav deklarēts):

php'Trait does not exist'

Skatiet arī