以下代码在连接到不存在的数据库时会抛出警告,除此之外一切正常。这在关闭错误提示的生产环境可以正常工作,但如果不需要错误提示我宁愿不要。
function cpanel_db_connect($dbname) {
// normalize
$dbname = convert_to_slug($dbname);
$dbname = CPANEL_USER . '_' . $dbname;
$dbuser = CPANEL_USER . '_' . CPANEL_DB_USER;
// connnect database
$mysqli = new mysqli(CPANEL_DB_HOST, $dbuser, CPANEL_DB_PASS, $dbname);
if ($mysqli->connect_error) {
return false;
}
return $mysqli;
}
@
运算符来简单地抑制错误,例如:$mysqli = @new mysqli(CPANEL_DB_HOST, $dbuser, CPANEL_DB_PASS, $dbname);
。 - Frank FarmerMySQLi
在连接时不会抛出异常。您需要通过返回的对象上的connect_error
检查错误。 - Kevin Peno