Funktio trait_exists

Funktio trait_exists tarkistaa, onko määritettyä traitia olemassa nykyisessä näkyvyysalueessa. Ensimmäisenä parametrina funktio ottaa traitin nimen merkkijonona, toisena (valinnaisena) - lipun, joka osoittaa pitäisikö luokkien automaattilatausta käyttää.

Syntaksi

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

Esimerkki

Tarkistetaan traitin olemassaolo:

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

Koodin suorituksen tulos:

phptrue

Esimerkki

Tarkistetaan olematon trait pois pääsytetyllä automaattilatauksella:

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

Koodin suorituksen tulos:

phpfalse

Esimerkki

Funktion käyttö ehtolausekkeessa:

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

Koodin suorituksen tulos (jos traitia ei ole julistettu):

php'Trait does not exist'

Katso myös