(PHP 5, PHP 7, PHP 8)
mysqli::ping -- mysqli_ping — Проверяет соединение с сервером или пытается переподключиться, если соединение прервалось
Функция УСТАРЕЛА с PHP 8.4.0. Пользоваться функцией настоятельно не рекомендуют.
Объектно-ориентированный стиль
Процедурный стиль
Функция проверяет соединение с сервером. PHP попытается автоматически переподключиться, если соединение прервалось и включена глобальная настройка mysqli.reconnect.
Замечание: Драйвер
mysqlnd
игнорирует директивуmysqli.reconnect
файла php.ini, поэтому не переподключается автоматически.
Функцией пользуются клиенты, которые долго простаивали, чтобы проверить, не закрыл ли сервер соединение, и требуется ли переподключение.
mysql
Только для процедурного стиля: объект mysqli, который вернула функция mysqli_connect() или функция mysqli_init().
Функция возвращает true
, если выполнилась успешно, или false
, если возникла ошибка.
Если уведомления об ошибках mysqli включены (MYSQLI_REPORT_ERROR
) и запрошенная операция не удалась,
выдаётся предупреждение. Если, кроме того, установлен режим MYSQLI_REPORT_STRICT
,
вместо этого будет выброшено исключение mysqli_sql_exception.
Версия | Описание |
---|---|
8.4.0 |
Метод mysqli::ping()
и функция mysqli_ping() устарели.
Функция reconnect была недоступна
с PHP 8.2.0, что делает эту функцию устаревшей.
|
Пример #1 Пример проверки соединения с сервером методом mysqli::ping()
Объектно-ориентированный стиль
<?php
$mysqli = new mysqli("localhost", "my_user", "my_password", "world");
/* Проверка соединения */
if ($mysqli->connect_errno) {
printf("Не удалось подключиться: %s\n", $mysqli->connect_error);
exit();
}
/* Проверяем, жив ли сервер */
if ($mysqli->ping()) {
printf ("Соединение в порядке!\n");
} else {
printf ("Ошибка: %s\n", $mysqli->error);
}
/* закрываем соединение */
$mysqli->close();
?>
Процедурный стиль
<?php
$link = mysqli_connect("localhost", "my_user", "my_password", "world");
/* проверка соединения */
if (mysqli_connect_errno()) {
printf("Не удалось подключиться: %s\n", mysqli_connect_error());
exit();
}
/* Проверяем, жив ли сервер */
if (mysqli_ping($link)) {
printf ("Соединение в порядке!\n");
} else {
printf ("Ошибка: %s\n", mysqli_error($link));
}
/* Закрываем соединение */
mysqli_close($link);
?>
Результат выполнения приведённых примеров:
Our connection is ok!