3v4l.org

run code in 300+ PHP versions simultaneously
<?php class A { private static self $singleton; private function __construct() {} public static function getInstance(): self { if(!isset(self::$singleton)) { self::$singleton = new self; } return self::$singleton; } } $a = A::getInstance(); $b = A::getInstance(); $c = A::getInstance(); var_dump($a); var_dump($b); var_dump($c);
Output for 7.4.0 - 7.4.33, 8.0.1 - 8.0.30, 8.1.0 - 8.1.34, 8.2.0 - 8.2.30, 8.3.0 - 8.3.30, 8.4.1 - 8.4.18, 8.5.0 - 8.5.3
object(A)#1 (0) { } object(A)#1 (0) { } object(A)#1 (0) { }

preferences:
70.9 ms | 1249 KiB | 4 Q