- var_dump: documentation ( source)
- spl_object_hash: documentation ( source)
<?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->bind($obj1, 'private');
$obj3 = $cloner();
var_dump(spl_object_hash($obj3));