为什么try cache 捕获不到 pdo 长链接下mysql server gone awary错误

等风来___ 发布于 2017/11/06 17:16
阅读 457
收藏 0
PHP

PDO使用的持久链接,为了测试方便,mysql的wait_timeout和interactive_timeout的超时时间都设置为5.

当出现 Warning: PDO::__construct(): MySQL server has gone away 错误的时候,cache捕获不到,而且可以继续往下打印$r的结果,

而且

\PDO::ATTR_SERVER_INFO

通过这个常量可以一直获取到信息,不会出现null或false的情况.

总感觉这两个timeout只是起到了判断的作用,实际上这个持久链接的pdo对象虽然设置了5秒超时的时间,但没有关闭.

加载中
0
雨宮蓮

catch  cache是什么鬼

等风来___
这不是重点...
0
W
WeiYongxin

不是PDOException?

不是PDOException?

等风来___
不是这个问题, 问题应该是这个 http://codeigniter.org.cn/forums/thread-7455-1-1.htm
0
Minho
Minho

try catch 只能捕捉 Exception。

对PHP的警告和错误这些用 

trigger_error

触发的消息是无法try的。

等风来___
谢谢 已经改为在执行sql时try了。
返回顶部
顶部