尝试& catch pdo close数据库连接

时间:2013-09-04 01:59:20

标签: php pdo

try{
    //PDO CONNECT DB, $db

}catch(PDOException $e){die("ERROR"));}

我有一个查询用户PDO连接到数据库。

我用try& catch,我的问题是我的查询是否错误

我需要在die();之前关闭一致吗?

}catch(PDOException $e){$db="NULL"; die("ERROR"));}

2 个答案:

答案 0 :(得分:6)

事实上,你根本不应该die()

在您学习如何正确使用try和catch之前,不应使用此语句。它不是为了回应“错误”。它有完全不同的目的。

如果您想在错误查询时回复愚蠢的“错误”,则必须正确执行。
即,

  • 发送appropriape​​ HTTP标头
  • 记录错误以通知开发人员问题
  • 向客户显示任何错误消息
  • 在一个地方完成所有这些工作,而不是针对每个查询重复

为此,您必须设置一个异常处理程序:

set_exception_handler('myExceptionHandler');
function myExceptionHandler($e)
{
    header('HTTP/1.1 500 Internal Server Error', TRUE, 500);
    error_log($e->getMessage().". Trace: ".$e->getTraceAsString());
    echo "ERROR";
    exit;
}

将此代码放入bootstrap / config文件中,并退出将每个查询包装到try-catch中。

答案 1 :(得分:1)

不,在php中没有必要。当您的php进程完成后,连接也将关闭。