trait_exists ֆունկցիան

trait_exists ֆունկցիան ստուգում է՝ արդյոք նշված trait-ը գոյություն ունի ընթացիկ տեսանելիության տիրույթում: Առաջին պարամետրով ֆունկցիան ընդունում է trait-ի անունը տողի տեսքով, երկրորդ (ոչ պարտադիր) պարամետրով՝ դրոշ, որը ցույց է տալիս, արդյոք անհրաժեշտ է օգտագործել դասերի ավտաբեռնում:

Շարահյուսություն

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

Օրինակ

Ստուգենք trait-ի գոյությունը.

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

Կոդի կատարման արդյունք.

phptrue

Օրինակ

Ստուգենք գոյություն չունեցող trait-ը անջատված ավտաբեռնմամբ.

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

Կոդի կատարման արդյունք.

phpfalse

Օրինակ

Ֆունկցիայի օգտագործումը պայմանի օպերատորում.

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

Կոդի կատարման արդյունք (եթե trait-ը հայտարարված չէ).

php'Trait does not exist'

Տես նաև

  • class_exists ֆունկցիան,
    որը ստուգում է դասը
  • interface_exists ֆունկցիան,
    որը ստուգում է ինտերֆեյսը
  • get_declared_traits ֆունկցիան,
    որը վերադարձնում է trait-ները
  • class_uses ֆունկցիան,
    որը վերադարձնում է դասի trait-ները