W aplikacjach PHP korzystających z MySQL (w rozszerzeniu MySQLi) po wykonaniu operacji na bazie danych warto jawnie zakończyć pracę z połączeniem. Poprawnym wywołaniem jest mysqli_close(), ponieważ ta funkcja służy do zamykania wcześniej otwartego połączenia (uchwytu) do serwera MySQL. W praktyce oznacza to zwolnienie zasobów po stronie aplikacji i serwera oraz ograniczenie ryzyka utrzymywania zbędnych połączeń.
Odpowiedź mysqli_commit() bywa myląca, bo również "kończy" pewien etap pracy, ale dotyczy wyłącznie transakcji: zatwierdza zmiany wykonane w jej ramach. Nie zamyka jednak połączenia z bazą.
Podobnie mysqli_rollback() odnosi się do transakcji i służy do wycofania (anulowania) zmian, jeśli wystąpi błąd lub chcemy przywrócić stan sprzed rozpoczęcia transakcji. To nadal nie jest zamknięcie połączenia.
Opcja mysqli_exit() jest niepoprawna w tym kontekście, ponieważ w standardowym API MySQLi nie jest to funkcja przeznaczona do zamykania połączenia. Łatwo tu o błąd skojarzeniowy: słowo "exit" kojarzy się z zakończeniem programu, ale zakończenie skryptu PHP to co innego niż zamknięcie konkretnego zasobu, jakim jest połączenie z bazą.
Wskazówka egzaminacyjna: jeśli w pytaniu jest mowa o "zakończeniu pracy z bazą" w znaczeniu zwolnienia połączenia, szukaj funkcji związanej z close (zamknięciem). Jeśli pojawiają się słowa "zatwierdzić" lub "wycofać", wtedy właściwe są funkcje transakcyjne.