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.28, 8.2.0 - 8.2.19, 8.3.0 - 8.3.7
object(A)#1 (0) { } object(A)#1 (0) { } object(A)#1 (0) { }

preferences:
102.66 ms | 402 KiB | 123 Q