get_class
(PHP 4, PHP 5, PHP 7)
get_class — Returns the name of the class of an object
Description
get_class ([ object $object ] ) : string
 Gets the name of the class of the given object. 
Parameters
-  object
-  The tested object. This parameter may be omitted when inside a class. Note: Explicitly passing nullas theobjectis no longer allowed as of PHP 7.2.0. The parameter is still optional and calling get_class() without a parameter from inside a class will work, but passingnullnow emits anE_WARNINGnotice.
Return Values
 Returns the name of the class of which object is an instance. Returns false if object is not an object. 
 If object is omitted when inside a class, the name of that class is returned. 
 If the object is an instance of a class which exists in a namespace, the qualified namespaced name of that class is returned. 
Errors/Exceptions
 If get_class() is called with anything other than an object, an E_WARNING level error is raised. 
Changelog
| Version | Description | 
|---|---|
| 7.2.0 | Prior to this version the default value for objectwasnulland it had the same effect as not passing any value. Nownullhas been removed as the default value forobject, and is no longer a valid input. | 
Examples
Example #1 Using get_class()
<?php
class foo {
    function name()
    {
        echo "My name is " , get_class($this) , "\n";
    }
}
// create an object
$bar = new foo();
// external call
echo "Its name is " , get_class($bar) , "\n";
// internal call
$bar->name();
?> The above example will output:
Its name is foo My name is foo
Example #2 Using get_class() in superclass
<?php
abstract class bar {
    public function __construct()
    {
        var_dump(get_class($this));
        var_dump(get_class());
    }
}
class foo extends bar {
}
new foo;
?> The above example will output:
string(3) "foo" string(3) "bar"
Example #3 Using get_class() with namespaced classes
<?php
namespace Foo\Bar;
class Baz {
    public function __construct()
    {
    }
}
$baz = new \Foo\Bar\Baz;
var_dump(get_class($baz));
?> The above example will output:
string(11) "Foo\Bar\Baz"
See Also
- get_called_class() - The "Late Static Binding" class name
- get_parent_class() - Retrieves the parent class name for object or class
- gettype() - Get the type of a variable
- is_subclass_of() - Checks if the object has this class as one of its parents or implements it
    © 1997–2020 The PHP Documentation Group
Licensed under the Creative Commons Attribution License v3.0 or later.
    https://www.php.net/manual/en/function.get-class.php