get_class (): 获取当前调用方法的类名;
get_called_class():获取静态绑定后的类名;
有例为证:
class Foo{ ?????public function test(){ ????????var_dump(get_class()); ?????} ?????public function test2(){ ???????var_dump(get_called_class()); ?????} ?????public static function test3(){ ???????var_dump(get_class()); ?????} ?????public static function test4(){ ???????var_dump(get_called_class()); ?????} ??} ??class B extends Foo{ ??} ??$B=new B(); ??$B->test(); ??$B->test2(); ??Foo::test3(); ??Foo::test4(); ??B::test3(); ??B::test4();
输出结果:
string ‘Foo‘ (length=3)string ‘B‘ (length=1)string ‘Foo‘ (length=3)string ‘Foo‘ (length=3)string ‘Foo‘ (length=3)string ‘B‘ (length=1)
转:http://blog.csdn.net/tashanhongye/article/details/48159771
参:http://php.net/manual/zh/function.get-called-class.php
php get_called_class()函数与get_class函数的区别
原文地址:http://www.cnblogs.com/fps2tao/p/8030168.html