Переменные, используемые в функциях PHP, автоматически сбрасываются после выполнения функции? - PullRequest
11 голосов
/ 06 апреля 2011

У меня есть вопрос относительно переменных / массивов, используемых в функциях PHP. После выполнения функции все переменные автоматически сбрасываются? Если нет, то когда они сбрасываются точно после выполнения всей страницы PHP? Через определенное время?

Полезно ли сбрасывать все переменные, используемые в функции, в конце функции для освобождения из памяти?

Заранее благодарю за помощь и комментарии!

Ответы [ 3 ]

7 голосов
/ 06 апреля 2011

Локальные переменные, которые определены и используются в функции, не сбрасываются автоматически после выполнения функции. Скорее они помечены для сбора сборщиком мусора. Если вы не используете большие объемы памяти с определением локальной переменной, на самом деле нет необходимости явно сбрасывать их. Просто позвольте сборщику мусора выполнить свою работу.

0 голосов
/ 06 апреля 2011

Да, все, что не объявлено глобальным ВНУТРИ функции, не будет существовать вне функции. После выполнения функции значения больше не сохраняются в памяти.

PHP: переменная область действия

0 голосов
/ 06 апреля 2011

Да, они освобождаются, как только их область действия заканчивается (функция возвращает).

Я не думаю, что их память очищается автоматически, хотя, скорее, они будут очищены, когда потребуется дополнительная память.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...