mysqli::close

mysqli_close

(PHP 5, PHP 7)

mysqli::close -- mysqli_closeCloses a previously opened database connection

Opis

Styl obiektowy

mysqli::close ( void ) : bool

Styl proceduralny

mysqli_close ( mysqli $link ) : bool

Closes a previously opened database connection.

Otwarte nietrwałe połącznie z MySQL i zbiory wyników są automatycznie niszczone, gdy skrypt PHP kończy swoje wykonywanie. Tak więc, mimo iż samodzielne zamykanie połączeń i zwalnianie zasobów wyników nie jest obowiązkowe, jest to zalecane. Pozwala natychmiastowo zwrócić zasoby dla PHP i MySQL, co może poprawić wydajność. Aby uzyskać więcej informacji, przeczytaj o zwalnianiu zasobów

Parametry

połączenie

Tylko styl proceduralny: Identyfikator połączenia zwrócony przez mysqli_connect() lub mysqli_init()

Zwracane wartości

Zwraca TRUE w przypadku powodzenia, FALSE w przypadku błędu.

Przykłady

See mysqli_connect().

Notatki

Informacja:

mysqli_close() will not close persistent connections. For additional details, see the manual page on persistent connections.

Zobacz też:

add a note add a note

User Contributed Notes 3 notes

up
0
PD
1 year ago
Note with Francis' example, using the function name link() will throw an error at runtime as it is already a function within the language. see: http://php.net/manual/en/function.link.php
up
-8
Francois
2 years ago
Since a lot of manual examples recommend to use a variable to initiate your connection, it is interesting to know that mysqli_close() will unset that variable, causing further connection attempts to fail.
ex:

$link = mysqli_connect($host, $user, $pw);

if ($link) {
    // Database is reachable
    mysqli_close($link);
}

if ($link) {
    // Database unreachable because $link = NULL
}

Easiest solution for me is to initiate connection through a function.
ex:

function link() {
    global $host;
    global $user;
    global $pw;
    global $link;
    $link = mysqli_connect($host, $user, $pw);
}

link();
// Database is reachable
mysqli_close($link)
link();
// Database is reachable
mysqli_close($link)
up
-27
php at dafydd dot com
11 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