$class1 = new Class;
$class2 = $class1;
unset ($class1);
Сласс 2 при этом не ансетается и не должен. А как сделать, чтобы ансетнулся.
Форум → Программирование → PHP для идиотов → unset, $class1 = $class2;
Страницы: ← Следующая страница →
5 июня 2010 г. 9:41, спустя 5 минут 9 секунд
5 июня 2010 г. 10:05, спустя 8 минут 51 секунду
class myClass {}
$a = new myClass();
var_dump($a);
$b =& $a;
$a = NULL;
var_dump($b);
5 июня 2010 г. 10:16, спустя 10 минут 49 секунд
<?php
/**
* Статический класс, который служит для глобализации классов.
*
* @author vaseninm
* @version 1.0
*
*/
class Pixelio {
static private $_registry;
/**
* Доступ к классу. Получение переменных.
* @param string $name - имя класа для доступа
* @return object
*/
public static function get($name) {
return self::$_registry[$name] ? self::$_registry[$name] : NULL;
}
/**
* Записываем переменную в хранилище
* @param string $name Имя для обращения Pixelio::get('name')
* @param object $var Объект класса, к которому мы будем обращатся
* @return object
*/
public static function set($name, $var) {
if (isset(self::$_registry[$name])) {
throw new Exception ('Такой объект уже записан.');
} else {
self::$_registry[$name] = $var;
return $var;
}
}
/**
*
* Уничтожаем объект
* @param string $name Имя класса, который нужно уничтожить.
*/
public static function destroy ($name) {
unset(self::$_registry[$name]);
return true;
}
}
$db = Pixelio::set ('db', New MYSQL); //В $дб запишем для удобства юзания
Pixelio::destroy ('db');
?>
5 июня 2010 г. 10:27, спустя 3 минуты 26 секунд
ты дестрой пытаешься сделать? так вызови деструктор …
Бля, не работает, как Главрыба сказал.
5 июня 2010 г. 10:39, спустя 7 минут 17 секунд
public static function destroy ($name) {
self::$_registry[$name]->__destruct();
}
5 июня 2010 г. 10:48, спустя 9 минут 9 секунд
public static function destroy ($name) {
self::$_registry[$name] = NULL;
return true;
}
$tpl =& Pixelio::set ('tpl', New Template);
Pixelio::desroy('tpl');
5 июня 2010 г. 11:16, спустя 28 минут 28 секунд
public static function &get($name)
{
return self::$_registry[$name] ? self::$_registry[$name] : NULL;
}
5 июня 2010 г. 11:46, спустя 29 минут 22 секунды
5 июня 2010 г. 11:49, спустя 3 минуты 41 секунду
почему нелогичен? просто у тебя задача нелогичная. если бы у тебя сделали копию паспорта и уничтожили ее, то твой паспорт бы тоже уничтожился? ахуенно логично! все логично и очевидно. ансет подтирает ссылку на объект до тех пор, пока ссылка не является жесткой (обзовем это так), либо пока колво ссылок > 1
Спасибо, Кость) Помогло!Спустя 32 сек.Ну, да. А пхп то реално нелогичен.
5 июня 2010 г. 11:53, спустя 3 минуты 17 секунд
Страницы: ← Следующая страница →
Пожалуйста, авторизуйтесь, чтобы написать комментарий!