(PHP 4, PHP 5)
get_class — 返回对象的类名
$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) , "\n";
    }
}
// create an object
$bar = new foo();
// external call
echo "Its name is " , get_class($bar) , "\n";
// internal call
$bar->name();
?>
以上例程会输出:
Its name is foo My name is foo
object
     The tested object. This parameter may be omitted when inside a class.
   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  get_class() is called with anything other than an
   object, an E_WARNING level error is raised.
  
| 版本 | 说明 | 
|---|---|
| Since 5.3.0 | 
        NULL became the default value for object,
        so passing NULL to object now has the same
        result as not passing any value.
        | 
      
| Since 5.0.0 | The class name is returned in its original notation. | 
| Since 5.0.0 | 
        The object parameter is optional if called
        from the object's method.
        | 
      
Example #2 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();
?>
以上例程会输出:
Its name is foo My name is foo
Example #3 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;
?>
以上例程会输出:
string(3) "foo" string(3) "bar"