【问题标题】:Open and close SQL for each function, or open SQL do everything then close SQL?为每个函数打开和关闭 SQL,还是打开 SQL 做所有事情然后关闭 SQL?
【发布时间】:2011-07-09 19:55:29
【问题描述】:

我想知道 PHP/MySQL 开发的最佳实践是什么。

例如,我有以下内容:

  • connect.php
  • close.php

在connect.php中,它使用require_once('classes/database.php')并使用$database = new database();然后调用$database->connect();

我应该 require_once 说一个 header.php 和一个 footer.php 并有一个整体连接(每个主网页都包括这些),或者,当我需要它时打开和关闭它。例如,我有一个 functions.php 文件,其中包含我应该执行的功能:

public function test() {
    $db = new database();
    // db setup here
    $db->connect();
    // do stuff here
    $db->disconnect();
}

public function test() {
    // stuff here
}

谢谢!

【问题讨论】:

    标签: php mysql


    【解决方案1】:

    连接到数据库通常是一个相当昂贵的过程 - 耗时。尽可能避免多次连接以响应单个请求。

    【讨论】:

      【解决方案2】:

      打开到数据库的连接通常需要一些时间,所以我建议在脚本开头一劳永逸地打开它。

      还好知道在脚本结束时,PHP 会自动关闭打开的连接,因此通常不需要显式关闭与数据库的连接。

      为了有更健壮的代码,我会做这样的事情:

      class Database {
          var $connection = null;
      
          public function connect() {
              if($this->connection == null) {
                  // setup the connection here
              }
          }
      }
      

      这样,每次您需要数据库连接时,您都可以调用$db->connect(),但工作实际上只会在第一次调用时完成。这将确保即使在代码重构之后,例如在您的头文件中,数据库也会在需要时连接。

      【讨论】:

        猜你喜欢
        • 2011-10-20
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2016-11-03
        • 1970-01-01
        • 2023-03-18
        • 2010-09-27
        • 1970-01-01
        相关资源
        最近更新 更多