trait_exists

(PHP 5 >= 5.4.0)

trait_existsChecks if the trait exists

Description

bool trait_exists ( string $traitname [, bool $autoload ] )

Parameters

traitname

Name of the trait to check

autoload

Whether to autoload if not already loaded.

Return Values

Returns TRUE if trait exists, FALSE if not, NULL in case of an error.

Коментарии

Автор:
<?php
trait World {

    private static 
$instance;
    protected 
$tmp;

    public static function 
World()
    {
       
self::$instance = new static();
       
self::$instance->tmp get_called_class().' '.__TRAIT__;
       
        return 
self::$instance;
    }

}

if ( 
trait_exists'World' ) ) {
   
    class 
Hello {
        use 
World;

        public function 
text$str )
        {
            return 
$this->tmp.$str;
        }
    }

}

echo 
Hello::World()->text('!!!'); // Hello World!!!
2013-06-19 17:20:24
http://php5.kiev.ua/manual/ru/function.trait-exists.html
What is the default value of $autoload? And in which way traits are autoloaded? Is there something as spl_autoload() for traits?
2016-01-28 20:38:51
http://php5.kiev.ua/manual/ru/function.trait-exists.html
Traits are compatible with class autoload mechanism - in fact, if you look at source code of trait_exists function, you will find similar peace of code (see Zend/zend_builtin_functions.c)
2017-03-10 17:35:35
http://php5.kiev.ua/manual/ru/function.trait-exists.html

    Поддержать сайт на родительском проекте КГБ