|
|
1
2
Global variables are indisputably evil . 任何告诉您使用它们的人在处理使用它们的代码方面都没有范围经验。不幸的是,在我的经验中,使用全局语言的PHP编码人员远远多于其他任何语言,这主要是由于无知。 实际上,每一个类都应该是自我一致的,这意味着无论你用多少次新的方法将它证实为一个对象都不重要。唯一的例外是单例模式,但是现实中需要单例模式的实例是 如此稀有 几乎每一次使用这些代码都是一个不必要的设计缺陷,它将代码紧密地耦合在一起,这也是一个 very bad thing . php缓存db连接,所以在同一个程序中可以有一个不受限制的mysql_connect()s,并且每个页面加载时它只连接一次(除非手动关闭它)。因此,立即从config.php中删除$engine,并将所有代码重写为:
我会快乐的 elucidate 更多,如果你需要的话。 |
|
2
2
您需要参考 Variables scope . 因为在没有全局或定义/声明$engine的情况下无法访问它( singleton design pattern 记住)在函数内部。 编辑 您也可以将它作为参数传递给函数(以前忘记提到过这个)。 |