我有一个在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对象的最佳方法是什么?
答案 0 :(得分:9)
确保PDO :: ATTR_PERSISTENT为false
解决此问题的最佳方法可能是捕获PDOException并重新连接。