-1

可能重复:
数据库连接的全局或单例?

我在 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。知道我做错了什么吗?

4

2 回答 2

2

如果你声明$connection一个全局变量,你的代码就可以了。

但最好避免使用全局变量。您可以在 Test 类中设置连接。

一个例子是:

class Test {

  protected $connection;

  public function setConnection($connection) {
    $this->connection = $connection;
  }

  function test_me () {
    // use $this->connection.
    //...
  }
}
于 2012-06-17T05:51:19.480 回答
0

有几种方法可以实现这一点,简单的应该是

function test_me()
{
    global $database;

    echo $database->connection; // or do whatever you want with it
}
于 2012-06-17T05:50:25.697 回答