通常,一个好的谷歌搜索足以回答我的大部分问题,但$this
不是其中之一。因此,这是我的第一个问题:
很多人(在 SO 和其他地方)说 Singletton 很糟糕。实际上太糟糕了,以至于一些开发人员甚至认为它是一种反基督反模式,应该被依赖注入模式所取代。这个“规则”的唯一例外是记录器(嗯,几乎)。
有人争辩说,因为在 PHP 中变量最多是 1 个请求旧的......
[...] Singleton 的两个主要目的之一在这里不适用。
但是在那个请求期间,可能/将会发生从数据库中的多次提取。数据库是所有请求之间的共享资源,如果我不确定连接尽可能少,我可能会遇到max_connections
错误(只是一个例子)。
那么,如果 Singleton 在大多数情况下是一个糟糕的设计,那么管理数据库连接呢?Singleton 是个好主意还是我应该选择 DI ?
提前致谢 : )