PHP PDO - 什么需要 try catch ?

标签 php mysql exception pdo try-catch

我正在使用 PHP 和 PDO。现在我想在出现问题时建立一种日志。 PDO 可能会出现什么问题?

现在我有这些测试:

连接测试

try {
    $this->pdo = new PDO($dsn, $credentials['user'], $credentials['pass'], $options);
} catch(Exception $e) {
    $this->file->put( date('Y-m-d') . '.txt', 'log', 'Database error');
}

执行测试

try {
    $stmt->execute();
} catch(Exception $e) {
    $this->error->log('SQL', 'query error');
}

还有其他好的测试吗?

最佳答案

您没有在日志中记录异常消息。我建议你在你的捕获中做这样的事情:

$this->error->log('SQL', $e . PHP_EOL);

这将为您提供更容易理解和可读的日志。

关于 PDO 捕获的异常,您可以阅读该帖子:How to handle PDO exceptions

关于PHP PDO - 什么需要 try catch ?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35156002/

相关文章:

c# - C# 中是否存在所谓的数组类型不匹配异常?

javascript - 如何在 php 表中执行 javascript 函数

php - 连接mysql时出现110连接超时错误

javascript - 简单的 Ajax 自动完成示例,无法使用 PHP

php - 在另一个查询的 WHERE 条件中使用查询中的数据

mysql - MySql 中的索引类型?

swift - “ fatal error :在展开可选值时意外发现nil”是什么意思?

C++:如何处理从 std:exception 派生的异常,具体取决于它们的类型?

php - Zend_Date 计算减去两个日期的错误

php - 如何获取两个子串之间的子串?