【发布时间】:2012-06-17 05:45:29
【问题描述】:
我在 database.php 中有一个数据库类,然后在同一个文件上创建一个对象;
$database = new Database();
然后我将这个文件包含到另一个文件中——这个文件有一个名为Test 的类在Test 类中有一个方法test_me。
在 test_me 方法中,我想访问 Database 类的 $connection 变量。我该怎么做?
这是我尝试过的;
function test_me(){
global $connection;
//use $connection on another function..
}
这给了我一个错误 undefined variable $connection 。知道我做错了什么吗?
【问题讨论】:
-
有些人使用
singletons,有些人使用依赖注入。您还可以查看持久连接。 -
您也可以尝试
$GLOBALS['connection'],但我会认真重新考虑您的代码结构。您还可以使用dbconn()函数,该函数返回一个静态声明的$connection变量并在您的函数中使用它(有点?singletonpattern)。但是带有一些代码封装的 DI 是我对最佳实践的建议。
标签: php database global-variables undefined