3v4l.org

run code in 300+ PHP versions simultaneously
<?php class A { public function getStatic() { return get_class($this); } public function getCalledClass() { return get_called_class(); } public static function sGetStatic() { return get_class(new static); } public static function sGetCalledClass() { return get_called_class(); } } class B extends A { public function pGetStatic() { return parent::getStatic(); } public function pGetCalledClass() { return parent::getCalledClass(); } public static function psGetStatic() { return parent::sGetStatic(); } public static function psGetCalledClass() { return parent::sGetCalledClass(); } } $b = new B; var_dump($b->getStatic()); $b = new B; var_dump($b->getCalledClass()); var_dump(B::sGetStatic()); var_dump(B::sGetCalledClass()); $b = new B; var_dump($b->pGetStatic()); $b = new B; var_dump($b->pGetCalledClass()); var_dump(B::psGetStatic()); var_dump(B::psGetCalledClass());

preferences:
38.7 ms | 402 KiB | 5 Q