Перейти к содержимому

Функция PHP mysqli_close()

В этой статье мы сосредоточимся на функции mysqli_close() в PHP, которая используется для закрытия соединения MySQLi. Мы предоставим вам обзор функции, принцип её работы и примеры использования.

Введение в функцию mysqli_close()

Функция mysqli_close() — это встроенная процедурная функция в PHP, используемая для закрытия соединения MySQLi. В объектно-ориентированном API MySQLi аналогичная операция выполняется путем вызова метода close() у объекта mysqli. Оба подхода полезны, когда необходимо освободить ресурсы или когда вы завершили работу с конкретным соединением.

Как использовать функцию mysqli_close()

Использование операции закрытия соединения MySQLi очень просто. Вам нужно лишь вызвать соответствующую функцию или метод для валидного объекта соединения. Вот пример с использованием объектно-ориентированного API:

Как использовать функцию mysqli_close()

php
<?php
$mysqli = new mysqli("localhost", "username", "password", "database");
if ($mysqli->connect_errno) {
    echo "Failed to connect to MySQL: " . $mysqli->connect_error;
    exit();
}

// execute queries using the connection

if (!$mysqli->close()) {
    echo "Connection close failed.";
}
?>

В этом примере мы создаем новый объект MySQLi и подключаемся к базе данных MySQL с помощью имени пользователя и пароля. Затем мы можем выполнять запросы с использованием этого соединения. Наконец, мы закрываем соединение, вызывая метод close() объекта MySQLi. Обратите внимание, что метод возвращает true при успехе и false при ошибке. Если соединение не закрыто явно, PHP автоматически освободит его ресурсы при завершении скрипта.

Для процедурного API эквивалентный синтаксис выглядит так: mysqli_close($link);, где $link — это ресурс соединения, возвращаемый функцией mysqli_connect(). Вот пример процедурного подхода:

Процедурное использование mysqli_close()

php
<?php
$link = mysqli_connect("localhost", "username", "password", "database");
if (!$link) {
    die("Connection failed: " . mysqli_connect_error());
}

// execute queries using the connection

if (!mysqli_close($link)) {
    echo "Connection close failed.";
}
?>

Расширенное использование

Операция закрытия MySQLi также может применяться в более сложных сценариях. Например, вы можете использовать её для освобождения ресурсов, занятых конкретным соединением, или для одновременного закрытия нескольких соединений. Вот пример:

Расширенное использование PHP mysqli_close()

php
<?php
$mysqli1 = new mysqli("localhost", "user1", "pass1", "database1");
$mysqli2 = new mysqli("localhost", "user2", "pass2", "database2");

// execute queries using the connections

$mysqli1->close();
$mysqli2->close();
?>

В этом примере мы создаем два новых объекта MySQLi и подключаемся к двум разным базам данных MySQL с разными именами пользователей и паролями. Затем мы можем выполнять запросы с использованием обоих соединений. Наконец, мы закрываем оба соединения, вызывая метод close() у каждого объекта MySQLi.

Примечание о постоянных соединениях: mysqli_close() не может закрыть постоянные соединения. Постоянные соединения остаются открытыми после завершения скрипта и управляются пулом соединений.

Заключение

Подводя итог, функция mysqli_close() (и её аналог в ООП — метод close()) является мощным инструментом для закрытия соединений MySQLi в PHP. Понимание принципов работы функции и сценариев её расширенного использования позволит вам эффективно освобождать ресурсы и управлять соединениями с базой данных в ваших PHP-скриптах.

Practice

Какова цель функции close() в PHP?

Считаете ли это полезным?

Предпросмотр dual-run — сравните с маршрутами Symfony на продакшене.