标签: php database oop
如果我有一个数据库类,并将该类的实例传递给其他类的构造函数,它仍然只使用一个连接,还是会创建与我传递给它的构造函数一样多的连接?
答案 0 :(得分:2)
一般来说,传递给函数或分配给变量的对象(不使用clone)会增加引用计数但不会创建另一个实例。
clone
如果克隆了一个对象,则所有属性都将复制到一个新对象中;标量属性将重复,其他属性(对象,资源)将具有增加的引用计数。
结论
假设您已创建数据库类的单个实例,并且数据库连接在构造函数内创建一次并存储在属性中,则传递它不会导致打开多个连接。