3v4l.org

run code in 300+ PHP versions simultaneously
<?php class Singleton{ private static $instance; private function __construct(){} public static function instance() { if (is_null(self::$instance)){ self::$instance = new static; } return self::$instance; } } $obj1 = Singleton::instance(); $obj2 = Singleton::instance(); var_dump(spl_object_hash($obj1), spl_object_hash($obj2)); $closure = function(){ return clone self::$instance; }; $cloner = $closure->bindTo($obj1); $obj3 = $cloner(); var_dump(spl_object_hash($obj3));
Output for git.master, git.master_jit, rfc.property-hooks
string(32) "00000000000000010000000000000000" string(32) "00000000000000010000000000000000" Fatal error: Uncaught Error: Access to undeclared static property Closure::$instance in /in/SD1mJ:38 Stack trace: #0 /in/SD1mJ(44): Closure->{closure}() #1 {main} thrown in /in/SD1mJ on line 38
Process exited with code 255.

This tab shows result from various feature-branches currently under review by the php developers. Contact me to have additional branches featured.

Active branches

Archived branches

Once feature-branches are merged or declined, they are no longer available. Their functionality (when merged) can be viewed from the main output page


preferences:
35.97 ms | 401 KiB | 8 Q