<?php
trait Singleton
{
final public static function getInstance()
{
static $instance;
if (!isset(static::$instance)) {
static $instance;
static::$instance = new static;
}
return static::$instance;
}
}
abstract class Abudabia {
use Singleton;
}
abstract class Mozambik {
use Singleton;
}
class a1 extends Abudabia
{
public function set()
{
return 'allah ahbar';
}
}
class a2 extends Mozambik
{
public function get()
{
return 'algazira';
}
}
$a = a1::getInstance();
$b = a2::getInstance();
var_dump($a->set(),$b->get());
Fatal error: Uncaught Error: Access to undeclared static property a1::$instance in /in/JRjPi:9
Stack trace:
#0 /in/JRjPi(40): Abudabia::getInstance()
#1 {main}
thrown in /in/JRjPi on line 9
Process exited with code 255.
Fatal error: Uncaught Error: Access to undeclared static property: a1::$instance in /in/JRjPi:9
Stack trace:
#0 /in/JRjPi(40): Abudabia::getInstance()
#1 {main}
thrown in /in/JRjPi on line 9
Process exited with code 255.