如何为连接到db的PHP代码提供结构

时间:2012-06-02 16:05:01

标签: php database connection

我有一个php页面,需要从数据库中进行一些查询。所以我开始写下一些函数,我注意到我需要确保连接处于活动状态,并在数据检索完成时关闭连接。但这并不是一个天才,认为这不是解决这个问题的最明智的方法:

function getConnection() {
//it connects
}

function killConection() {
//it closes connection
}

function getData() {
getConnection();
//it gets data
killConnection();
}

function getVeryImportantData() {
getConnection();
//it gets data
killConnection();
}

//... and so on ...

我肯定不想为我需要建立的每个请求建立新的数据库连接,所以我想知道是否有办法组织我的代码,以便在我需要时保持连接活动,这将重新连接如果因任何原因而关闭,并在完成所有必需的操作后断开连接。

2 个答案:

答案 0 :(得分:2)

解决问题的方法很简单:

  1. 如果您需要一个连接(只有一个尚未打开),则只打开与数据库的连接
  2. 如果您知道,只需关闭与数据库的连接,则不需要额外的连接。
  3. 这将导致只在数据库查询完成后才会打开数据库连接的处理。

    数据库连接 - 如果没有特别关闭 - 将在脚本完成后自动关闭。

    数以百万计的网站使用这一原则,它们或多或少都有效!所以我认为这并不是那么糟糕。

答案 1 :(得分:1)

我会做什么:

  1. 创建一个应用程序类,这是您的实际页面
  2. 向此类添加一个方法,该方法启动数据库连接并将其保存到$this->databaseConnection属性,这样您以后可以检查是否已有数据库连接。
  3. 您提及的其余功能可以设置为应用程序类的方法。
  4. 这比简单的脚本要复杂一些,但我认为值得一试。它将帮助您以正确的方式规划您的应用程序,它还将有助于正确构建您的应用程序。

    另外,使用PDO是个好主意。

    如果您需要有关此类方法的帮助,请与我们联系。