将PHP数据库类用作singleton?
有什么缺点答案 0 :(得分:5)
缺点与使用Singleton模式的任何类相同:
答案 1 :(得分:1)
如果您的DB类构建为仅连接到单个数据库,那么当您的脚本需要连接到两个单独的数据库时,您将遇到问题。但是,您可以构建单例类以接受多个服务器配置,然后在单例中管理它们。
否则,将数据库类设计为单例是一种很有意义的实践,因为您可以严格控制脚本在任何给定时间内建立的连接数。
答案 2 :(得分:1)
很难对它进行单元测试,也无法建立多个数据库连接。众所周知,全局变量有许多缺点,单身人士也不例外,只是他们是一个更“友好”的全局变量。
我发现了一个很好的article和一个旧的SO question。
答案 3 :(得分:1)
您不能使用两个数据库连接。你会想要这个因为: