class A
{
public function test()
{
$this->dd();
self::dd();
static::dd();
}
public static function dd()
{
echo 'a';
}
}
class B extends A
{
public static function dd()
{
echo 'b';
}
}
class C extends B
{
public static function dd()
{
echo 'c';
}
}
$c = new C();
$c->test();
- $this表示的是被实例化的那个类如例中的类C
- self表示的是当前方法所在的类本身,即例中的A
- static指的是最子类中的那个类,即例中的C