Шаблоны проектирования PHP: Active Record
Active Record - это шаблон проектирования, который включает в себя класс с методами сохранения данных и бизнес-логики. Однако он нарушает принцип единственной ответственности, так как класс сочетает в себе множество обязанностей. Для решения этой проблемы предлагается создать родительский класс, который реализует методы сохранения данных универсальным способом.
✔️Этот подход называется Layer Supertype.
🔎Приведен пример работы с Active Record. В данном примере создается класс Product, который содержит методы для работы с продуктами в базе данных SQLite. Класс имеет статическое свойство conn для хранения соединения с базой данных и переменную data для хранения данных продукта.
Класс Product содержит методы для выполнения различных операций с базой данных, таких как поиск продукта по ID, выборка всех продуктов с возможностью фильтрации, удаление продукта и сохранение (включая добавление и обновление).
Приведенный код также включает примеры тестирования методов:
🟠INSERT
🟠UPDATE
🟠выборка всех продуктов из базы данных.
Post #3672
2.87K