@Eka555

Сколько экземпляров одного класса можно создавать?

Есть класс "DataBase" обращение идет методом чейнинга.
Делаю так :
$db  = DataBase::instance();
$db->table('users')->get();

Использую Singleton.
Вопрос такой сколько экземпляров классна можно создавать ?
Можно и вообще надо ли делать так:
$db  = new DataBase;
$db->table('users')->get();

У меня почти все так реализовано. Вот другой пример:
$validation  = Validation::instance();
$validation->validate($_POST,$rules);

Объясните пожалуйста где как надо делать.
Хочу понять где надо использовать Singleton а где не надо.
  • Вопрос задан
  • 797 просмотров
Решения вопроса 2
trevoga_su
@trevoga_su
как думаешь, бывают ли ситуации, когда нужно иметь два подключения в скрипте к двум разным базам?
по моему, такая ситуация вполне реальна
сл-но делать одиночкой класс для работы с субд - не правильно
Ответ написан
@Silm
Использую Singleton.
Вопрос такой сколько экземпляров классна можно создавать ?

Если у вас синглтон, то вы физически можете создать только 1 экземпляр. Для того и делают синглтоны... в чем вопрос?
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
miraage
@miraage
Старый прогер
Несмотря на то, что синглтон является антипаттерном - он незаменим в разработке.
Конкретно в этом случае, схема такая:
- в синглтоне хранится соединение с базой данных = DbConnection
- querybuilder создается новые объекты себя, но использует DbConnection
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы
YCLIENTS Москва
от 200 000 до 350 000 ₽
Ведисофт Екатеринбург
от 25 000 ₽
ИТЦ Аусферр Магнитогорск
от 100 000 до 160 000 ₽
24 апр. 2024, в 22:00
500 руб./в час
24 апр. 2024, в 21:49
10000 руб./за проект