Что делает метод `close ()` выражения Mysqli?

Может ли кто-нибудь сказать мне, когда вы, например, обновите, вставьте, удалите .. если вы затем закроете его, как mysqli_stmt::close(); ? Я проверил руководство PHP и не понял, что на самом деле делает close() .

Пример:

 $stmt = $dbh->prepare("SELECT `user_email` FROM `users` WHERE `user_email` = ? LIMIT 1"); $stmt->execute(array($email)); $stmt->close(); 

Следующая часть моего вопроса: если в качестве примера у меня было несколько запросов на обновление в транзакции после каждого execute() для каждого запроса, который я выполняю в транзакции, я должен закрыть их отдельно? … потому что это транзакция не обязательно, мне нужно использовать $stmt->close(); после каждого выполнения (); или просто используйте один $stmt->close(); после всех?

Похоже, вы используете метод mysqli close. Метод $ stmt-> close () просто просто закрывает закрытие предыдущего открытого подключения к базе данных ( http://www.php.net/manual/en/mysqli.close.php ).

EDIT: Если это PDO, который вы используете, я просто не понимаю, почему вы не пользуетесь возможностью использования имен параметров вместо вопросительных знаков. Вот почему многие люди выбирают PDO вместо mysqli – у вас может быть более полное полное представление запросов / операторов.

Нет метода close () для PDO, вместо этого для закрытия соединения вы просто устанавливаете переменную базы данных в нуль – это приведет к закрытию соединения.

 $stmt = null; 

Чтобы ответить на второй вопрос, вам нужно только закрыть соединение один раз. После выполнения всех запросов, которые необходимо выполнить в базе данных.