Example
class A
{
static public $data = 'A';
static public function set()
{
//self::$data = '--'; //normal binding
static::$data = '--'; //late binding
}
}
class B extends A
{
static public $data = 'B';
}
class C extends A
{
static public $data = 'C';
}
echo A::$data, B::$data, C::$data;
C::set();
echo A::$data, B::$data, C::$data;
normal binding
ABC--BC
late binding
ABCAB--