Xwab
Форумыnavigate_nextПрограммирование на PHP

Освобождение памяти
Сообщения
Hameleon

Привет, всем, помогите плиз с таким вопросом  :
Допустим мы юзаем MYSQLi:
$m = new MYSQLi();
$m->close();
Как зделать освобождение ресурсов для своего класса ($m->close()
Если, например, класс следущего содержания:
class class {
var $new = '';
var $array = array();
function some () {
Здесь идёт обработка чего-то там... Например $this->new $this->array
}
}
Подойдёт ли такой вариант:
class class {
var $new = '';
var $array = array();
function __destruct() {
$this-> new = '';
$this -> array = array();
Ну или:
unset ($this->new);
unset($this->array());
}
}

10 Ноя 2010, 22:23
Fuelen

Hameleon, то, что ты делаешь, делается автоматически) свой деструктор надо, когда надо удалить временные файлы, закрыть соиденение с базой, фтп и т.п.

10 Ноя 2010, 23:48
zverengine5

соединение с базой не нужно закрывать. Используй free_result() или как там ее

11 Ноя 2010, 10:59
Hameleon

zverengine5, может ты это имел ввиду?:
$query = $m->query();
$query -> close();
Такие варианты я знаю, мне более интересен, ответ на мой вопрос
// Fuelen, спасибо

11 Ноя 2010, 11:08
Fuelen

3,соиденение просто не обязательно закрывать, если работаешь с 1 базой...)) а всякие случаи есть

11 Ноя 2010, 16:03
Replikon

И ты в PHP думаешь об освобождении памяти?

12 Ноя 2010, 18:21
Mars

var? а зачем?

12 Ноя 2010, 18:28
Hameleon

Не знаю... Может хоть какие-то мили-мили секунды выиграем. То, что все "ненужное" в конце скрипта убираеться самим пыхом я это знаю...

12 Ноя 2010, 18:41
Akdmeh

8, не выиграешь.
Разве что будешь удалять объемные переменные (больше килобайта).

12 Ноя 2010, 18:46
iceman12

Akdmeh, это для шаблонизатора => почти всегда больше 1кб.

12 Ноя 2010, 18:52
Ответить на тему