您的方法缺少
static关键字。更改
function getInstanceByName($name=''){至
public static function getInstanceByName($name=''){如果要静态调用它们。
请注意,静态方法和Singletons是可测试性的牺牲品。
还要注意,您在构造函数中做的工作太多了,尤其是所有查询都不应放在其中。您的构造函数应该做的就是将对象设置为有效状态。如果您必须从类外部获取数据,请考虑注入数据而不是提取数据。另请注意,构造函数无法返回任何内容。它们将始终返回void,因此所有这些
returnfalse语句都只会终止构造。



