我一直在PHP中使用单例模式的注册表对象。像所有单例模式类一样,我认为主要方法应该如下:
class registry
{
public static function singleton()
{
if( !isset( self::$instance ) )
{
self::$instance = new registry();
}
return self::$instance;
}
public function doSomething()
{
echo 'something';
}
}
因此,每当我需要使用注册表类的东西时,我会使用以下函数:
registry::singleton()->doSomethine();
现在我不明白创建普通静态函数和创建普通静态类有什么区别。如果我只使用普通静态类,它会创建一个新对象吗?
class registry
{
public static function doSomething()
{
echo 'something';
}
}
现在我可以直接使用:
registry::doSomethine();
有人能解释一下单例类的作用吗?我真的不太理解。