php – 我应该检查与is_resource或mysqli_ping的MySQL连接吗?

我应该检查与is_resource或
mysqli_ping的
MySQL连接吗?为什么?

if (!mysql_ping($mysqli)) {
    $mysqli = new mysqli($db_host,
                         $db_username,
                         $db_password,
                         $db_name);
}

if (!is_resource($mysqli)) {
    $mysqli = new mysqli($db_host,
                         $db_username,
                         $db_password,
                         $db_name);
}

最佳答案 is_resource($mysqli)不会将MySQLi资源报告为有效的资源类型.

MySQLi使用对象作为存储容器,而不是资源;即便
使用过程API,因此预期输出.

很久以前这已经是reported as a bug了,它不是一个错误,它是预期的行为,正如johannes在评论中所说的那样.

所以,我想,毕竟你必须使用mysqli_ping.

点赞