Все кто работают с PHP, наверное знают, что такое «присваивание по ссылке».
Это инструкция вида $a = &$b, которая означает по сути, что переменная $a является ссылкой на переменную $b. Т.е. в результате:
1 2 3 4 |
$b = 10; $a = &$b; $b = 20; echo $a; |
будет выведено значение 20, т.к. $a просто ссылается на $b.
И такая запись, как по мне, выглядит логично. Слева переменная, в которую что-то присваиваем, посередине оператор присваивания «=», справа то, что присваиваем — ссылка на переменную $b, которая, чтобы понимать что это ссылка, обозначается при помощи &.
Однако, оказывается, есть совершенно равноценная запись той же самой инструкции, в виде:
$a =& $b;
Она работает полностью эквивалентно. В результате все равно $a будет являться ссылкой на $b.
Но для меня такая запись гораздо менее информативна. Я все время вхожу в ступор, видя непривычный оператор присваивания «=&», который при такой записи выхватывается взглядом посередине.
Видимо, кому-то такая запись кажется удобнее. Но в чем же заключается ее удобство?
Не могу понять.