获取构造类的类名

Jvd*_*erg 5 php

可能重复:
从扩展类中获取类名

假设我有以下内容:

class Foo
{
  public $name;

  public __construct()
  {
    $this->name = __CLASS__;
  }
}

class Bar extends Foo
{
}

class FooBar extends Foo
{
}

$bar = new Bar();
echo $bar->name; // will output 'Foo', but I want 'Bar'

$foobar = new FooBar();
echo $foobar->name; // will output 'Foo', but I want 'FooBar'
Run Code Online (Sandbox Code Playgroud)

有没有办法获取构造类的名称,而无需在扩展类中设置名称,例如在类Foo中设置名称?

注意:我有很多来自Foo的分类,在每个派生类中设置名称会有很多编码.

dec*_*eze 8

public function __construct() {
    $this->name = get_class($this);
}
Run Code Online (Sandbox Code Playgroud)

http://php.net/get_class