Подтвердить что ты не робот

Mysqli - Мне действительно нужно сделать $result-> close(); & $mysqli-> close();?

Просто начал использовать mysqli. Если я работаю с небольшими наборами данных на небольших веб-сайтах (с точки зрения трафика), мне действительно нужно использовать их все время?

$result->close(); 
$mysqli->close();

Кроме того, для тех, кто выполняет пользовательские PHP и MySQL без рамки, является ли mysqli общим предпочтительным способом взаимодействия с MySQL?

4b9b3361

Ответ 1

PHP закроет все открытые файлы и соединения DB в конце script. Это хорошая практика сделать это вручную, когда вы закончите с соединениями, но это не катастрофа, если вы этого не сделаете. Если у вас есть соединение с БД, которое будет использоваться во всем script, вы также можете оставить его открытым.

+1 на PDO

Ответ 2

Я почувствовал, что обновление этого потока было необходимо...

В соответствии с текущей документацией вы всегда должны использовать $mysql- > kill() в дополнение к $mysql- > close().

$thread = $mysqli->thread_id;
$mysqli->kill($thread);
$mysqli->close();

(В качестве дополнительной заметки я попросил разработчиков Oracle об использовании PDO с MySQL, и они обескуражили это. Они используют исключительно MySQLi. PDO не поддерживается, и он не поддерживает многие текущие функции MySQL.) Редактировать: устарело комментарий.

Изменить: изменил порядок инструкций, как было предложено.

Ответ 3

У вас должно появиться привычка делать очистку вправо (вызов закрывается, как только вы закончите), или утечки ресурсов могут постепенно накапливаться до тех пор, пока они не влияют на производительность.

Что касается уровня DB, изучение PDO должно быть целесообразным, поскольку оно хорошо спроектировано и совместимо со всеми основными базами данных.