(PHP 5)
mysqli::__construct -- mysqli_connect — 新規に MySQL サーバへの接続をオープンする
オブジェクト指向型(コンストラクタ):
手続き型
実行中の MySQL サーバへの接続をオープンします。
ホスト名または IP アドレスです。この引数に NULL または "localhost" を渡すと ローカルホストとみなされます。もし可能な場合、TCP/IP プロトコルの代わりに パイプが使用されます。
MySQL のユーザ名。
省略したり NULL を渡したりした場合、MySQL サーバは パスワードを持たないユーザレコードについてのみ認証を試みます。 これによってひとつのユーザ名において(パスワードが指定されたか 否かによって)違うパーミッションを与えることができます。
指定した場合は、 クエリが行われるデフォルトのデータベースとなります。
MySQL サーバに接続する際のポート番号を指定します。
使用するソケットあるいは名前つきパイプを指定します。
注意: socket 引数を指定しても、MySQL サーバへの 接続時の型を明示的に定義することにはなりません。MySQL サーバへの 接続方法については host 引数で定義されます。
MySQL サーバへの接続を表すオブジェクトを返します。
例1 オブジェクト指向型
<?php
$mysqli = new mysqli("localhost", "my_user", "my_password", "world");
/* 接続の状況をチェックします */
if ($mysqli->connect_error) {
printf("Connect failed: %s\n", mysqli_connect_error());
exit();
}
printf("Host information: %s\n", $mysqli->host_info);
/* 接続を閉じます */
$mysqli->close();
?>
例2 手続き型
<?php
$link = mysqli_connect("localhost", "my_user", "my_password", "world");
/* 接続の状況をチェックします */
if (!$link) {
printf("Connect failed: %s\n", mysqli_connect_error());
exit();
}
printf("Host information: %s\n", mysqli_get_host_info($link));
/* 接続を閉じます */
mysqli_close($link);
?>
上の例の出力は以下となります。
Host information: Localhost via UNIX socket
注意: オブジェクト指向の構文に関する注意: 接続に失敗した場合にもオブジェクトが返されます。 接続が失敗したかどうかを確かめるには、上の例のように mysqli->connect_error プロパティを使用しましょう。
注意: エラー "Can't create TCP/IP socket (10106)" が発生するのは、たいていは variables_order 設定ディレクティブに E が含まれていない場合です。 Windows では、これが含まれていなければ SYSTEMROOT 環境変数が使用できず、PHP が Winsock の読み込みに失敗します。