【发布时间】:2010-07-16 06:36:06
【问题描述】:
我有一个长时间运行的 php 脚本,它基本上是一个无限循环监听事件(它是一个 xmpp 机器人),我以 nohup php bot.php & 启动脚本。
脚本的原始结构是这样的
$mysqli = mysqli_connect(...);
while(1) {
if(event1) {
// do database action
} else if(event2) {
// non database action
echo "something";
}
}
当我运行脚本时,最初一切正常。当我几个小时后回来时,如果我发出 event2 但在发出 event1 时失败并出现与数据库相关的错误(PHP 致命错误:在第 n 行中的非对象上调用成员函数 bind_param())
我怎样才能保持 mysql 连接有效,或者有没有办法检查 mysqli 连接是否有效,以便我可以重新连接?
【问题讨论】:
标签: php mysqli database-connection daemon