Я делаю это (да, я использую неправильные данные соединения, чтобы вызвать ошибку соединения)
try {
$connection = new mysqli('localhost', 'my_user', 'my_password', 'my_db') ;
} catch (Exception $e ) {
echo "Service unavailable";
exit (3);
}
Но PHP делает это php_warning:
mysqli::mysqli(): (28000/1045): Access denied for user 'my_user'@'localhost' (using password: YES)
В этом примере я использую неправильные данные соединения, чтобы вызвать ошибку соединения, но в реальном мире база данных может быть недоступна, или сеть может быть недоступна... и т.д.
Вопрос: Есть ли способ, не подавляя предупреждения, перехватить проблему с подключением к базе данных?