(PHP 5, PHP 7, PHP 8)
mysqli::ping -- mysqli_ping — ping 一个连接,或者如果连接处于断开状态,重新连接
面向对象风格
过程化风格
检查到服务器的连接是否还正常。 在启用 mysqli.reconnect 选项的前提下, 如果连接已经断开, ping 操作会尝试重新建立连接。
注意: mysqlnd 驱动会忽略 php.ini 中的 mysqli.reconnect 选项, 所以它不会自动重连。
客户端建立连接之后,长时间处于闲置状态, 可以用此函数来检查服务器是否关闭了这个连接, 如有必要,将会自动重新建立到服务器的连接。
成功时返回 true
, 或者在失败时返回 false
。
示例 #1 mysqli::ping() 例程
面向对象风格
<?php
$mysqli = new mysqli("localhost", "my_user", "my_password", "world");
/* 检查连接 */
if ($mysqli->connect_errno) {
printf("Connect failed: %s\n", $mysqli->connect_error);
exit();
}
/* 检查连接是否还活跃 */
if ($mysqli->ping()) {
printf ("Our connection is ok!\n");
} else {
printf ("Error: %s\n", $mysqli->error);
}
/* 关闭连接 */
$mysqli->close();
?>
过程化风格
<?php
$link = mysqli_connect("localhost", "my_user", "my_password", "world");
/* 检查连接 */
if (mysqli_connect_errno()) {
printf("Connect failed: %s\n", mysqli_connect_error());
exit();
}
/* 检查连接是否还活跃 */
if (mysqli_ping($link)) {
printf ("Our connection is ok!\n");
} else {
printf ("Error: %s\n", mysqli_error($link));
}
/* 关闭连接 */
mysqli_close($link);
?>
以上例程会输出:
Our connection is ok!