PHP get_class 返回对象的类名
get_class
(PHP 4, PHP 5)
get_class — 返回对象的类名
说明
string get_class ([ object $obj ] )
返回对象实例 obj 所属类的名字。如果 obj 不是一个对象则返回 FALSE。
Note: 在 PHP 扩展库中定义的类返回其原始定义的名字。在 PHP 4 中 get_class() 返回用户定义的类名的小写形式,但是在 PHP 5 中将返回类名定义时的名字,如同扩展库中的类名一样。
Note:
自 PHP 5 起,如果在对象的方法中调用则 obj 为可选项。
Example #1 使用 get_class()
<?php class foo { function foo() { // implements some logic } function name() { echo "My name is ", get_class($this), " "; } } // create an object $bar = new foo(); // external call echo "Its name is ", get_class($bar), " "; // internal call $bar->name();
以上例程会输出:
Its name is foo
My name is foo
另外,PHP 的魔术常量 __CLASS__ ,也可表示当前类,不过它在方法内才真正起作用,如下所示:
<?php class jianbao { public function __construct() { echo "My class name is " . get_class($this), "<br/>"; echo '__CLASS__:', __CLASS__, "<br/>"; } } $jianbao = new jianbao(); echo "It is " . get_class($jianbao);
输出:
My class name is jianbao __CLASS__:jianbao It is jianbao