PHP 8.1.0 Released!

mysqli::close

mysqli_close

(PHP 5, PHP 7, PHP 8)

mysqli::close -- mysqli_close事前にオープンしているデータベース接続を閉じる

説明

オブジェクト指向型

public mysqli::close(): bool

手続き型

mysqli_close(mysqli $mysql): bool

既に開いているデータベース接続を閉じます。

既に開いている、持続的でない MySQL 接続と、 結果セットはオブジェクトが破棄されるとすぐに閉じられます。 既に開いている接続と結果セットを明示的に閉じるのはオプションですが、 データベースから結果を取得した後、大量に処理が残っている場合、 データベースに関する処理を全て実行し終わったらすぐに接続を閉じるのが望ましいです。

パラメータ

link

手続き型のみ: mysqli_connect() あるいは mysqli_init() が返す mysqliオブジェクト。

戻り値

成功した場合に true を、失敗した場合に false を返します。

例1 mysqli::close() example

オブジェクト指向型

<?php
mysqli_report
(MYSQLI_REPORT_ERROR MYSQLI_REPORT_STRICT);
$mysqli = new mysqli("localhost""my_user""my_password""world");
$result $mysqli->query("SELECT Name, CountryCode FROM City ORDER BY ID LIMIT 3");
/* 不要になったらすぐに、接続を閉じます */
$mysqli->close();
foreach (
$result as $row) {
    
/* データベースから取得したデータを処理します */
}

手続き型

<?php
mysqli_report
(MYSQLI_REPORT_ERROR MYSQLI_REPORT_STRICT);
$mysqli mysqli_connect("localhost""my_user""my_password""world");
$result mysqli_query($mysqli"SELECT Name, CountryCode FROM City ORDER BY ID LIMIT 3");
/* 不要になったらすぐに、接続を閉じます */
mysqli_close($mysqli);
foreach (
$result as $row) {
    
/* データベースから取得したデータを処理します */
}

注意

注意:

mysqli_close() は、持続的な接続を閉じません。 詳細な情報は、マニュアルの 持続的データベース接続を参照ください。

参考

add a note add a note

User Contributed Notes 1 note

up
-38
php at dafydd dot com
13 years ago
I've had situations where database connections appeared to persist following php execution. So, now, my __destructor function explicitly contains a $cxn->close(). It hurts nothing, and helps avoid memory leaks.
To Top