Late static Late static binding is a variant of binding somewhere between static and dynamic binding. Consider the following
PHP example: class A { public static $word = "hello"; public static function hello() { print self::$word; } } class B extends A { public static $word = "bye"; } B::hello(); In this example, the PHP interpreter binds the keyword self inside A::hello() to class A, and so the call to B::hello() produces the string "hello". If the semantics of self::$word had been based on late static binding, then the result would have been "bye". Beginning with PHP version 5.3, late static binding is supported. Specifically, if self::$word in the above were changed to static::$word as shown in the following block, where the keyword static would only be bound at runtime, then the result of the call to B::hello() would be "bye": class A { public static $word = "hello"; public static function hello() { print static::$word; } } class B extends A { public static $word = "bye"; } B::hello(); ==See also==