2

我有一个在 Xampp 上本地运行的 webapp,它通过 PDO 使用 mysql。

我有时会在页面上收到此警告;

 Warning: PDO::__construct(): MySQL server has gone away in C:\xampp\htdocs\myapp\functions\classes.php on line 101

我总是在脚本运行后取消设置 pdo 对象并在另一页上实例化一个新对象。实际的脚本似乎总是运行良好,但错误出现时非常烦人。刷新页面通常会使其消失一段时间。

我猜这是因为 pdo 对象没有被正确删除(即即使在对象取消设置后连接仍然存在)。然后,当我尝试使用另一个 pdo 对象时,它最终会超时导致错误。

使用后修复此问题/取消设置 pdo 对象的最佳方法是什么?

4

1 回答 1

9

确保 PDO::ATTR_PERSISTENT 为假

解决此问题的最佳方法可能是捕获 PDOException 并重新连接。

于 2013-08-20T12:43:01.647 回答