проверьте, действительно ли соединение mysql

У меня длинный сценарий php, который в основном представляет собой бесконечный цикл, который прослушивает события (его бот xmpp), я запускаю скрипт с nohup php bot.php & .

Необработанная структура скрипта похожа на

 $mysqli = mysqli_connect(...); while(1) { if(event1) { // do database action } else if(event2) { // non database action echo "something"; } } 

Когда я запускаю скрипт, все работает нормально. Когда я вернусь через несколько часов, бот отлично работает, если я выдаю событие2, но не смог выполнить событие1 с ошибкой, связанной с базой данных (PHP Fatal error: вызов функции-члена bind_param () для не-объекта в строке n)

Как я могу сохранить соединение mysql действительным или есть способ проверить, действительно ли соединение mysqli действительно, чтобы я мог снова подключиться?

вы можете выполнить ping-соединение http://php.net/manual/en/function.mysql-ping.php