mysqli::real_connect

mysqli_real_connect

(PHP 5, PHP 7)

mysqli::real_connect -- mysqli_real_connect锟斤拷锟斤拷一锟斤拷 MySQL 锟斤拷锟斤拷锟斤拷锟斤拷锟斤拷

说锟斤拷

锟斤拷锟斤拷锟斤拷锟斤拷锟�

mysqli::real_connect ([ string $host [, string $username [, string $passwd [, string $dbname [, int $port [, string $socket [, int $flags ]]]]]]] ) : bool

锟斤拷锟教伙拷锟斤拷锟�

mysqli_real_connect ( mysqli $link [, string $host [, string $username [, string $passwd [, string $dbname [, int $port [, string $socket [, int $flags ]]]]]]] ) : bool

锟斤拷锟斤拷一锟斤拷锟斤拷 MySQL 锟斤拷锟斤拷锟斤拷锟斤拷锟斤拷锟接★拷

锟斤拷 mysqli_connect() 锟侥诧拷同锟姐:

  • mysqli_real_connect() 锟斤拷要一锟斤拷锟斤拷效锟侥讹拷锟斤拷锟斤拷锟斤拷锟斤拷锟斤拷锟� mysqli_init() 锟斤拷锟斤拷锟斤拷

  • 锟斤拷锟斤拷使锟斤拷 mysqli_options() 锟斤拷锟矫革拷锟斤拷锟斤拷锟斤拷锟斤拷锟矫★拷

  • 锟结供 flags 锟斤拷锟斤拷锟斤拷

锟斤拷锟斤拷

link

锟斤拷锟皆癸拷锟教伙拷锟斤拷式锟斤拷锟斤拷mysqli_connect() 锟斤拷 mysqli_init() 锟斤拷锟截碉拷锟斤拷锟接憋拷识锟斤拷

host

锟斤拷锟斤拷使锟斤拷锟斤拷锟斤拷锟斤拷IP 锟斤拷址锟斤拷锟斤拷锟斤拷锟斤拷锟� NULL 锟斤拷锟斤拷锟街凤拷锟斤拷 "localhost" 锟斤拷么锟斤拷使锟斤拷 通锟斤拷锟斤拷锟� TCP/IP 锟斤拷锟接憋拷锟截凤拷锟斤拷锟斤拷锟斤拷

username

MySQL 锟斤拷录锟矫伙拷锟斤拷

passwd

锟斤拷锟斤拷锟斤拷锟� NULL锟斤拷锟斤拷么锟斤拷使锟斤拷没锟斤拷锟斤拷锟斤拷锟斤拷证锟侥凤拷式锟斤拷锟皆碉拷录锟斤拷锟斤拷锟斤拷锟斤拷锟斤拷为一锟斤拷锟矫伙拷 锟结供锟斤拷同锟斤拷权锟睫o拷锟斤拷锟斤拷锟斤拷锟角凤拷锟结供锟斤拷锟斤拷锟诫。

dbname

锟斤拷锟斤拷执锟叫诧拷询锟斤拷锟斤拷默锟斤拷锟斤拷锟捷库。

port

指锟斤拷 MySQL 锟斤拷锟斤拷锟斤拷锟侥端匡拷

socket

指锟斤拷使锟矫碉拷 socket 锟斤拷锟斤拷锟斤拷锟斤拷通锟斤拷锟斤拷

Note:

指锟斤拷 socket 锟斤拷锟斤拷锟斤拷锟斤拷锟斤拷说锟斤拷要锟斤拷锟矫猴拷锟街凤拷式锟斤拷锟斤拷锟斤拷锟捷库。 锟斤拷锟斤拷锟斤拷锟捷的凤拷式锟斤拷 host 锟借定锟斤拷

flags

锟斤拷锟斤拷锟斤拷锟斤拷锟斤拷锟斤拷锟斤拷硬锟斤拷锟斤拷锟�

Supported flags
Name Description
MYSQLI_CLIENT_COMPRESS 使锟斤拷压锟斤拷协锟斤拷
MYSQLI_CLIENT_FOUND_ROWS 锟斤拷锟斤拷锟斤拷锟狡ワ拷锟斤拷锟斤拷锟斤拷锟斤拷锟斤拷锟斤拷锟斤拷影锟斤拷锟斤拷锟斤拷锟�
MYSQLI_CLIENT_IGNORE_SPACE 锟斤拷锟斤拷锟斤拷锟斤拷锟狡猴拷锟叫空革拷锟解将使锟斤拷锟叫的猴拷锟斤拷锟斤拷锟狡筹拷为锟斤拷锟斤拷锟街★拷
MYSQLI_CLIENT_INTERACTIVE 锟节关憋拷锟斤拷锟斤拷之前锟斤拷锟斤拷却锟� interactive_timeout 锟诫, 锟斤拷锟斤拷锟� wait_timeout 锟借定锟斤拷
MYSQLI_CLIENT_SSL 使锟斤拷 SSL 锟斤拷锟斤拷

Note:

锟接帮拷全锟角度匡拷锟角o拷锟斤拷 PHP 锟叫诧拷锟斤拷锟斤拷使锟斤拷 MULTI_STATEMENT锟斤拷 锟斤拷要执锟叫讹拷锟窖拷锟戒,锟斤拷使锟斤拷 mysqli_multi_query()锟斤拷

锟斤拷锟斤拷值

锟缴癸拷时锟斤拷锟斤拷 TRUE锟斤拷 锟斤拷锟斤拷锟斤拷失锟斤拷时锟斤拷锟斤拷 FALSE锟斤拷

锟斤拷锟斤拷

Example #1 mysqli::real_connect() 锟斤拷锟斤拷

锟斤拷锟斤拷锟斤拷锟斤拷锟�

<?php

$mysqli 
mysqli_init();
if (!
$mysqli) {
    die(
'mysqli_init failed');
}

if (!
$mysqli->options(MYSQLI_INIT_COMMAND'SET AUTOCOMMIT = 0')) {
    die(
'Setting MYSQLI_INIT_COMMAND failed');
}

if (!
$mysqli->options(MYSQLI_OPT_CONNECT_TIMEOUT5)) {
    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());
}

echo 
'Success... ' $mysqli->host_info "\n";

$mysqli->close();
?>

锟斤拷锟斤拷锟斤拷锟斤拷锟� when extending mysqli class

<?php

class foo_mysqli extends mysqli {
    public function 
__construct($host$user$pass$db) {
        
parent::init();

        if (!
parent::options(MYSQLI_INIT_COMMAND'SET AUTOCOMMIT = 0')) {
            die(
'Setting MYSQLI_INIT_COMMAND failed');
        }

        if (!
parent::options(MYSQLI_OPT_CONNECT_TIMEOUT5)) {
            die(
'Setting MYSQLI_OPT_CONNECT_TIMEOUT failed');
        }

        if (!
parent::real_connect($host$user$pass$db)) {
            die(
'Connect Error (' mysqli_connect_errno() . ') '
                    
mysqli_connect_error());
        }
    }
}

$db = new foo_mysqli('localhost''my_user''my_password''my_db');

echo 
'Success... ' $db->host_info "\n";

$db->close();
?>

锟斤拷锟教伙拷锟斤拷锟�

<?php

$link 
mysqli_init();
if (!
$link) {
    die(
'mysqli_init failed');
}

if (!
mysqli_options($linkMYSQLI_INIT_COMMAND'SET AUTOCOMMIT = 0')) {
    die(
'Setting MYSQLI_INIT_COMMAND failed');
}

if (!
mysqli_options($linkMYSQLI_OPT_CONNECT_TIMEOUT5)) {
    die(
'Setting MYSQLI_OPT_CONNECT_TIMEOUT failed');
}

if (!
mysqli_real_connect($link'localhost''my_user''my_password''my_db')) {
    die(
'Connect Error (' mysqli_connect_errno() . ') '
            
mysqli_connect_error());
}

echo 
'Success... ' mysqli_get_host_info($link) . "\n";

mysqli_close($link);
?>

锟斤拷锟斤拷锟斤拷锟教伙拷锟斤拷锟斤拷锟�

Success... MySQL host info: localhost via TCP/IP

注锟斤拷

Note:

MySQLnd 锟斤拷锟斤拷使锟矫凤拷锟斤拷锟斤拷锟斤拷默锟斤拷锟街凤拷锟斤拷锟斤拷锟斤拷锟街凤拷锟斤拷锟斤拷锟斤拷锟斤拷锟斤拷锟街o拷锟斤拷证时锟斤拷锟酵o拷锟斤拷锟斤拷 mysqlnd 使锟矫★拷

Libmysqlclient 使锟斤拷 my.cnf 锟叫碉拷默锟斤拷锟街凤拷锟斤拷锟斤拷锟斤拷锟斤拷锟节碉拷锟斤拷 mysqli_init() 之锟斤拷mysqli_real_connect() 之前锟饺碉拷锟斤拷 mysqli_options() 锟斤拷指锟斤拷锟斤拷

锟轿硷拷

  • mysqli_connect() - 锟斤拷锟斤拷 mysqli::__construct
  • mysqli_init() - 锟斤拷始锟斤拷 MySQLi 锟斤拷锟斤拷锟斤拷一锟斤拷锟斤拷源锟斤拷锟酵碉拷值锟斤拷锟斤拷锟街碉拷锟斤拷锟斤拷锟轿� mysqli_real_connect() 锟斤拷锟斤拷锟侥达拷锟斤拷锟斤拷锟�
  • mysqli_options() - 锟斤拷锟斤拷选锟斤拷
  • mysqli_ssl_set() - 使锟斤拷 SSL 锟斤拷锟斤拷锟斤拷锟斤拷锟捷匡拷之锟斤拷陌锟饺拷锟斤拷锟�
  • mysqli_close() - 锟截憋拷锟斤拷前锟津开碉拷锟斤拷锟捷匡拷锟斤拷锟斤拷