PHP

Присваивание ссылок на объекты

Задача
Необходимо связать два объекта, так чтобы при обновлении одного из них, аналогично изменялся бы и другой.

Решение
Для присваивания одного объекта другому по ссылке применяется оператор =&:

$adam = new user;
$dave =& $adam;


Обсуждение
В результате присваивания объекта с помощью оператора = создается новая копия объекта. Поэтому изменение одного не влияет на другой.

Но в случае применения оператора =& два объекта указывают друг на друга, поэтому любые изменения одного объекта отражаются на втором:

$adam = new user;
$adam->load_info('adam');
$dave =& $adam;
$dave->load_info('dave');


Значения в объекте $adam равны значениям в объекте $dave.
Теги:
классы, объекты, ооп
Добавлено: 21 Июля 2018 13:45:24 Добавил: Андрей Ковальчук Нравится 0
Добавить
Комментарии:
Нету комментариев для вывода...