【发布时间】:2014-04-11 09:07:50
【问题描述】:
我在下面创建了 Singleton 类,但我怎么知道只创建了一个实例。我该如何测试它?另外,self::$instance = new FileProcessor() 和self::$instance = new static() 之间有什么区别或者我应该使用哪一个?
谢谢
类
class FileProcessor
{
protected static $instance = null;
public static function get_instance()
{
if (self::$instance === null)
{
self::$instance = new FileProcessor();
//self::$instance = new static();
}
return self::$instance;
}
}
$obj_1 = FileProcessor::get_instance();
echo '<pre>'; print_r($obj_1);
$obj_2 = FileProcessor::get_instance();
echo '<pre>'; print_r($obj_2);
输出
FileProcessor Object
(
)
FileProcessor Object
(
)
【问题讨论】: