MySQLi не имеет метода connect()
при использовании объектно-ориентированного подхода.Соединения устанавливаются через __construct()
при вызове new MySQLi($host, $user, $pass, $dbname)
, поэтому это ожидаемое поведение
См. Документацию по MySQLi :: __ construct () для получения полной информации.
Существует функция mysqli_connect()
, которая устанавливает объект соединения MySQLi в процедурном (не OO) коде, например:
$connection = mysqli_connect($host, $user, $pass, $dbname);
При настройке объекта MySQLi через MySQLi::init()
вы можетезатем вызовите метод real_connect()
для объекта, возвращенного после установки параметров.
Адаптировано из документов MySQLi:
$mysqli = mysqli_init();
if (!$mysqli) {
die('mysqli_init failed');
}
if (!$mysqli->options(MYSQLI_OPT_CONNECT_TIMEOUT, 5)) {
die('Setting MYSQLI_OPT_CONNECT_TIMEOUT failed');
}
if (!$mysqli->real_connect('localhost', 'my_user', 'my_password', 'my_db')) {
die('Connect Error (' . mysqli_connect_errno() . ') '
. mysqli_connect_error());
}