У меня есть долго работающий скрипт 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 Fatal error: вызов функции-члена bind_param () для необъекта в строке n)
Как я могу сохранить соединение mysql действительным или есть способ проверить, действительно ли соединение mysqli так, чтобы я мог восстановить соединение иначе?