(PHP 4, PHP 5, PHP 7)
get_class — Returns the name of the class of an object
get_class ([ object $object ] ) : string
Gets the name of the class of the given object
.
object
The tested object. This parameter may be omitted when inside a class.
Note: Explicitly passing
null
as theobject
is 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 passingnull
now emits anE_WARNING
notice.
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.
If get_class() is called with anything other than an object, an E_WARNING
level error is raised.
Version | Description |
---|---|
7.2.0 | Prior to this version the default value for object was null and it had the same effect as not passing any value. Now null has been removed as the default value for object , and is no longer a valid input. |
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"
© 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