Funktionen trait_exists

Funktionen trait_exists kontrollerar om den angivna traiten finns i det aktuella synfältet. Den första parametern tar funktionen namnet på traiten som en sträng, den andra (valfria) - en flagga som indikerar om klassautoladdning ska användas.

Syntax

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

Exempel

Låt oss kontrollera om en trait finns:

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

Resultat av kodkörning:

phptrue

Exempel

Låt oss kontrollera en trait som inte finns med inaktiverad autoladdning:

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

Resultat av kodkörning:

phpfalse

Exempel

Användning av funktionen i en villkorssats:

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

Resultat av kodkörning (om traiten inte är deklarerad):

php'Trait does not exist'

Se även