Как я знаю, этот паттерн применяется для того, чтобы каждый раз не создавать экземпляр класса. Но я пока не представляю, как применять его на практике.
Например, я создал класс со всеми нужными методами, например для работы с БД. Я могу применить в нем singleton и могу уже не делать вот так $db = new dataBase(); в файлах, где мне нужно, а просто вызываю
$db =singletonTest::getInstance();
И начинаю работать с методами?
class SingletonTest
{
protected static $_instance;
private function __construct()
{
}
private function __clone()
{
}
public static function getInstance() {
if (null === self::$_instance) {
self::$_instance = new self();
}
return self::$_instance;
}
}