Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
PHP на примерах (2 издание). Авторы: Кузнецов М.В., Симдянов И.В. PHP 5/6. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. Самоучитель MySQL 5. Авторы: Кузнецов М.В., Симдянов И.В. Социальная инженерия и социальные хакеры. Авторы: Кузнецов М.В., Симдянов И.В. Объектно-ориентированное программирование на PHP. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум PHP

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: unset или так сойдет ?
 
 автор: Duran   (01.08.2005 в 10:52)   письмо автору
 
 

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

   
 
 автор: JC_Piligrim   (01.08.2005 в 11:20)   письмо автору
 
   для: Duran   (01.08.2005 в 10:52)
 

Все переменные уничтожаютсся, и открытые файлы закрываются, когда скрипт прекращает работу. Но ничего зазорного в использовании функции unset() я не вижу. =) Особенно, если памяти на сервере действительно жалко, или хостер жадный, или просто хочется, чтобы все было четко. Хотя есть моменты, в которых использование unset() ВЕСЬМА желательно. Например, когда в скрипте открываются и полностью считываются в переменнуые много больших файлов. Желательно, освобождать память сразу после использования каждого из них. Это может уберечь от возможных проблем с нехваткой памяти во время выполнения скрипта (у меня такое уже было на бесплатном хостинге).

   
 
 автор: Duran   (01.08.2005 в 11:47)   письмо автору
 
   для: JC_Piligrim   (01.08.2005 в 11:20)
 

Хм, понятно.... дык вообщет хостер не жадный (посмотрев на админа) да и памяти на сервере вроде хватает (посмотрев на ксион), но тада встречный вопрос - если переменные уничтожаются при закрытии файла, а "длинных" переменных это не касается чтоли ?

   
 
 автор: cheops   (01.08.2005 в 11:59)   письмо автору
 
   для: JC_Piligrim   (01.08.2005 в 11:20)
 

Кроме того, при помощи unset() следует удалять временные массивы, которые обрабатываются в цикле, иначе можно получить на следующей итерации засорённые массивы. Впрочем злоупотреблять unset() и удалять каждую переменную не стоит, так как это снизит читабельность кода и ни к чему, кроме появления дополнительных ошибок не приведёт.

   
 
 автор: JC_Piligrim   (01.08.2005 в 13:27)   письмо автору
 
   для: cheops   (01.08.2005 в 11:59)
 

И, к тому же большие тормоза.

   
 
 автор: JC_Piligrim   (01.08.2005 в 13:27)   письмо автору
 
   для: cheops   (01.08.2005 в 11:59)
 

И, к тому же, большие тормоза.

   
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования