PHP get_class() 函数返回给定对象的类名称。
语法
get_class(object)
参数
object |
|
返回值
返回object是其实例的类的名称。如果 object 不是对象,则返回 false。
如果在类内部省略 object,则返回该类的名称。
如果 object 是存在于命名空间中的类的实例,返回该类的限定命名空间名称。
异常
如果使用对象以外的任何对象调用函数,则会出现 E_WARNING 级错误。
示例:使用 get_class()
下面的示例显示 get_class( ) 函数。
<?php
class myClass {
function name() {
echo "Class name (internal call): ".get_class($this)."\n";
}
}
//创建对象
$myObject = new myClass();
//外部调用
echo "Class name (external call): ".get_class($myObject)."\n";
//内部调用
$myObject->name();
?>
上述代码的输出将是:
Class name (external call): myClass
Class name (internal call): myClass
示例:在超类中使用 get_class()
考虑下面的示例,其中此函数在超类中使用。
<?php
abstract class bar {
public function __construct() {
var_dump(get_class($this));
var_dump(get_class());
}
}
class foo extends bar {
}
new foo;
?>
上述代码的输出将是:
string(3) "foo"
string(3) "bar"
示例:使用 get_class() 与命名空间类
考虑下面的示例,其中此函数与命名空间类一起使用。
<?php
namespace Foo\Bar;
class Baz {
public function __construct() {
}
}
$baz = new \Foo\Bar\Baz;
var_dump(get_class($baz));
?>
上述代码的输出将是:
string(11) "Foo\Bar\Baz"