<?php
class A
{
protected static $_instance;
protected function __construct() {}
public static function getInstance()
{
if (self::$_instance === null) {
self::$_instance = new static();
}
return self::$_instance;
}
}
class B extends A
{
public function hi() {
echo 'HI';
}
}
echo get_class(B::getInstance());
$b = B::getInstance();
$b->hi();