Какой лучший способ получить доступ к базе данных внутри класса в PHP? - PullRequest
1 голос
/ 30 октября 2008

У меня есть класс сеанса, который должен хранить информацию о сеансе в базе данных MySQL. Очевидно, мне нужно будет запросить базу данных в методах этого класса. В общем, мне может понадобиться подключить более одной базы данных одновременно, а может быть, а может и не подключаться к этой базе данных уже.

Учитывая это, каков наилучший способ доступа к базам данных для класса сеанса или любого класса в этом отношении. Имеет ли смысл создавать класс для управления соединениями?

Ответы [ 3 ]

3 голосов
/ 30 октября 2008

Я бы посоветовал ознакомиться с этой презентацией, в том числе с рекомендациями по доступу к базе данных:

http://laurat.blogs.com/talks/best_practices.pdf

1 голос
/ 30 октября 2008

Да, я бы использовал DBAL . Либо вы можете написать свой собственный, либо вы можете использовать существующее решение, такое как PDO . Даже если вы используете существующее решение, вы можете написать класс-оболочку, использующий шаблон singleton , чтобы одно соединение могло использоваться совместно со всеми частями кода.

1 голос
/ 30 октября 2008

Соединения с базой данных являются ярким примером того, когда и где вы можете безопасно использовать шаблон Singleton; однако, если вы знаете, что объект сеанса будет глобальным объектом, и это будет единственное место, в котором вам нужно создавать соединения с базой данных, вы можете довольно безопасно хранить соединения БД как члены экземпляра класса сеанса.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...