PHP 7.0.6 Released

trait_exists

(PHP 5 >= 5.4.0, PHP 7)

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.

User Contributed Notes

Lubaev.K
2 years ago
<?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!!!
valerio dot bozzolan at gmail dot com
3 months ago
What is the default value of $autoload? And in which way traits are autoloaded? Is there something as spl_autoload() for traits?
To Top