数据库连接类的替代方案

时间:2014-01-12 21:32:02

标签: php database class caching mysqli

我几乎是PHP的新手,我需要帮助解决我遇到的最近一个问题。

我正在构建一个在服务器端使用PHP而在前端使用HTML5构建的项目 使用MySQLi检索所有数据。

例如:标题,说明,图片,背景颜色等......

我理解数据库的基本逻辑。我的页面只包含我在上面的示例中说明的四个元素,如何以最有效的方式与数据库进行通信?

  • 我是否可以为可能需要从数据库中提取的任何页面元素创建一个包含许多通用函数的函数页面?我何时打开和关闭与数据库的每次通信?
  • 或者可以使用某种 DatabaseHandlerClass ,例如this one,以便缓存特定页面加载所需的所有查询 然后打开一个连接查询它们并关闭连接?

请记住,我需要它尽可能通用且可扩展。任何提示和建议都会有所帮助。

更新

<?php


$name_query = "SELECT name FROM `template1` WHERE `user_id` = 1";
global $name;

if ($result = $mysqli->query($name_query)) {

    /* fetch object array */
    while ($obj = $result->fetch_object()) {
      $name = $obj->name;
    }

    /* free result set */
    $result->close();
}

/* close connection */
$mysqli->close();

?>

每次需要一组新数据时,是否需要编写此代码?你能指定如何有效地打开连接吗?

1 个答案:

答案 0 :(得分:1)

使用共享配置文件打开数据库连接,并在每个需要访问数据的脚本的顶部使用include

然后只需在每次需要一组新数据时查询数据。

数据库查询不是一个很大的开销 - 这是一个常见的误解 - 虽然应该有效地打开连接以避免达到最大连接限制。