Php PDO让数据库保持打开,或者在需要时打开和关闭?

Php PDO让数据库保持打开,或者在需要时打开和关闭?,php,pdo,Php,Pdo,我刚刚发现了PDO,对此我非常兴奋,但我读了一些关于如何实现它的教程,它们向我展示了不同的实现方法 所以现在我不知道哪条路最好 示例1:打开数据库一次 include("host.php"); //including the database connection //random PDO mysql stuff here 示例2:需要时打开或关闭数据库: try { $dbh = new PDO(mysql stuff); $sql = "mysql s

我刚刚发现了PDO,对此我非常兴奋,但我读了一些关于如何实现它的教程,它们向我展示了不同的实现方法

所以现在我不知道哪条路最好

示例1:打开数据库一次

  include("host.php"); //including the database connection
  //random PDO mysql stuff here
示例2:需要时打开或关闭数据库:

try {
$dbh = new PDO(mysql stuff);
$sql = "mysql stuff";
foreach ($dbh->query($sql) as $row)
    {
    echo $row['something'];
    }

/*** close the database connection ***/
$dbh = null;
}
catch(PDOException $e)
{
echo $e->getMessage();
}

哪一个最好?我认为示例2是最好的,但是代码比示例1多得多。

通常,在连接时会花费大量时间,而您只想做一次。不要在以后关闭你需要的连接,这只会减慢速度。如果你正在达到最大连接限制,你可以考虑缩短连接,但这是一个提示,你应该扩大一个永久的解决方案IMHO。

通常,连接时花费了大量的时间/丢失了,而你只想做一次。不要在以后关闭你需要的连接,这只会减慢速度。如果你正在达到最大连接限制,你可以考虑关闭连接,但是这是一个提示,你应该放大,然后一个永久的解决方案IMHO。< /P>只有关闭DB句柄,如果你知道你已经完成了,或者对MySQL变量/设置进行了大量修改,因此从一个新的干净句柄开始比撤消所有更改更容易。因此,如果我有7个不同的MySQL查询,那么示例2最好?不,示例1最好。如果你只是想再次使用它,那么关闭连接是没有意义的。这就像开车去商店,买牛奶,开车回家,再去商店,买面包,开车回家,等等。。。无意义的往返。我明白你的意思,那真的很愚蠢。只有在你知道你已经完成的情况下才关闭数据库句柄,或者对MySQL变量/设置进行了大量修改,因此从一个新的干净句柄开始比撤消所有更改更容易。因此,如果我有7个不同的MySQL查询,那么示例2最好?不,示例1最好。如果你只是想再次使用它,那么关闭连接是没有意义的。这就像开车去商店,买牛奶,开车回家,再去商店,买面包,开车回家,等等。。。无意义的往返。我明白你的意思,那真的很愚蠢。