Whatsername
Новичок
Механизм работы reference
Читаю статью Александра Грималовского (Flying) о references.
Уже две недели бьюсь над тем, что пытаюсь написать пример следующему (выделил красным):
$obj = &new Object();
$obj = new Object();
На первый взгляд разница между двумя этими путями невелика - все равно в результате мы получаем экземпляр необходимого нам объекта. Однако разница есть и она таится в конструкторе объекта. Все дело в том, что конструктор объекта вызывается до того, как завершится работа оператора new. Поэтому, если в конструкторе объекта вы создали какие-либо references в переменных объекта, используя для этого переменную $this, то все эти references будут потеряны! Так что вам необходимо четко следить за тем, как именно вы создаете экземпляры ваших объектов, чтобы избежать подобных, далеко не очевидных, проблем.
Не прошу написать этот пример за меня. Но, если не трудно, объясните мне по-руззки: о чем Flying ведет речь.
У меня references не бьются, хоть тресни.
Статья: http://providers.ru/articles/php/references.html
Спасибо.
Читаю статью Александра Грималовского (Flying) о references.
Уже две недели бьюсь над тем, что пытаюсь написать пример следующему (выделил красным):
$obj = &new Object();
$obj = new Object();
На первый взгляд разница между двумя этими путями невелика - все равно в результате мы получаем экземпляр необходимого нам объекта. Однако разница есть и она таится в конструкторе объекта. Все дело в том, что конструктор объекта вызывается до того, как завершится работа оператора new. Поэтому, если в конструкторе объекта вы создали какие-либо references в переменных объекта, используя для этого переменную $this, то все эти references будут потеряны! Так что вам необходимо четко следить за тем, как именно вы создаете экземпляры ваших объектов, чтобы избежать подобных, далеко не очевидных, проблем.
Не прошу написать этот пример за меня. Но, если не трудно, объясните мне по-руззки: о чем Flying ведет речь.
У меня references не бьются, хоть тресни.
Статья: http://providers.ru/articles/php/references.html
Спасибо.