6

Вопрос по php, oop – Должен ли я использовать unset в php __destruct ()?

Это хорошая практика, чтобы сбросить переменные, которые вы использовали в классе? Или это необязательно?

Если это хорошая практика, какая польза от использованияunset функционировать?

1 ответ
12

Вам действительно не нужно беспокоиться об очистке объявлений переменн

ых в PHP, сборка мусора позаботится обо всем за вас. Ваш__destruct() методы в первую очередь для таких вещей, как закрытие постоянных соединений.

На самом деле PHP теперь правильно обрабатывает закрытие MySQL-соединений, вам не нужно беспокоиться об этом. Возможно, для совместимости со старыми версиями было бы неплохо включить его, но __destruct не был добавлен до PHP5, поэтому я даже не уверен, что это имеет значение. Пример того, когда вы захотите использовать __destruct, - это если у вас был класс FTPConnection, который поддерживал постоянное удаленное FTP-соединение открытым, чтобы вы могли отправлять ему команды, и это __destruct будет корректно закрывать длительное соединение. Надеюсь, это поможет.

от nortron

Хорошо, спасибо за вашу помощь. Короче говоря, __destruct () в php часто используют для закрытия подключения mysql? Это правильно?

от jzarsuelo

Мое единственное личное использование этого метода - когда я закрываю соединение через PDO, например.$this->pdo = null; по соображениям безопасности

от Thielicious

Хорошо, спасибо за большую помощь. Спасибо.

от jzarsuelo

Похожие вопросы