我尝试打印创建新对象的类的名称。 我得到了这段代码:
class Class_A
{
public function __construct()
{
echo "new ".__class__." : are created"."<br />";
}
}
class B extends Class_A
{
}
class C extends Class_A
{
}
$NewObject1= new B ( );
$NewObject2= new C ( );
输出是:
new Class_A : are created
new Class_A : are created
为什么不new B : are created
new C : are created
?
我也尝试使用getParentClass()
,但它不能正常工作谢谢!
答案 0 :(得分:3)
在这种情况下你应该写
echo "new ".get_called_class()." : are created"."<br />";
您可以查看http://www.php.net/manual/en/function.get-called-class.php
答案 1 :(得分:3)
答案 2 :(得分:1)
__class__
指向代码
使用get_class($this)
代替