## Что ссылки собой не представляют

Как говорилось в предыдущих разделах, ссылки — не указатели. Следующая конструкция не будет делать то, что ожидается:

    <?php
    function foo(&$var)
    {
        $var =& $GLOBALS["baz"];
    }

    foo($bar);

Пример выполняет следующее: в функции foo переменная $var связывается с переменной $bar, которую PHP создал в месте вызова, но затем повторно связывается с переменной $GLOBALS["baz"]. Через механизм ссылок невозможно связать переменную $bar с другим значением в области видимости вызова, поскольку у функции foo нет доступа к переменной $bar, которую представляет только переменная $var, которой доступно только содержимое переменной $bar, но недоступна связка имя-значение, которую хранит таблица символов области видимости вызова. Привязать внешнюю переменную к другому значению помогает механизм возврата ссылок, который связывает ссылки с переменными, которые выбрала функция.

`↑` and `↓` to navigate • `Enter` to select • `Esc` to close • `/` to open