3v4l.org

run code in 300+ PHP versions simultaneously
<?php class A { static $data = ['a']; static function getData() { return self::$data; } } class B extends A { static $data = ['b']; static function getData() { return array_merge(parent::getData(), self::$data); } } class C extends B { static $data = ['c']; static function getData() { return array_merge(parent::getData(), self::$data); } } class D extends B { static $data = ['d']; static function getData() { return array_merge(parent::getData(), self::$data); } } $a = new A; $b = new B; $c = new C; $d = new D; var_dump($a::getData()); // Array('a'); var_dump($b::getData()); // Array('a', 'b'); var_dump($c::getData()); // Array('a', 'b', 'c'); var_dump($d::getData()); // Array('a', 'b', 'd');

preferences:
36.42 ms | 405 KiB | 5 Q