<?php
abstract class Singleton {
protected function __construct() {}
protected function __clone() {}
public static function getInstance() {
static $instance = null;
if (!$instance) {
$instance = new static;
}
return $instance;
}
}
class B extends Singleton {
public $var = 2;
}
class F extends Singleton {
public $var = 6;
}
var_dump(B::getInstance());
var_dump(F::getInstance());
Warning: PHP Startup: Unable to load dynamic library 'sodium.so' (tried: /usr/lib/php/8.3.5/modules/sodium.so (libsodium.so.23: cannot open shared object file: No such file or directory), /usr/lib/php/8.3.5/modules/sodium.so.so (/usr/lib/php/8.3.5/modules/sodium.so.so: cannot open shared object file: No such file or directory)) in Unknown on line 0
object(B)#1 (1) {
["var"]=>
int(2)
}
object(B)#1 (1) {
["var"]=>
int(2)
}