Late Static Binding

PHP implements a feature called late static bindings which can be used to reference the called class in a context of static inheritance.

<?php
class A {
    public static function who() {
        echo __CLASS__;
    }
    public static function test() {
        static::who(); // Here comes Late Static Bindings
    }
}

class B extends A {
    public static function who() {
        echo __CLASS__;
    }
}

B::test();
?>

Documentation

See also Late static binding in PHP - What, How & When

Related : Self, static, parent, Early Binding