П О Р Т А Л                            
С Е Т Е В Ы Х                          
П Р О Е К Т О В                        
  
Поиск по сайту:
                                                 
Главная

О проекте

Web-мастеру
     HTML & JavaScript
     SSI
     Perl
     PHP
     XML & XSLT
     Unix Shell

MySQL

Безопасность

Хостинг

Другое








Самое читаемое:

Учебник PHP - "Для Чайника".
Просмотров 5929 раз(а).

Иллюстрированный самоучитель по созданию сайтов.
Просмотров 8078 раз(а).

Учебник HTML.
Просмотров 4785 раз(а).

Руководство по PHP5.
Просмотров 1787 раз(а).

Хостинг через призму DNS.
Просмотров 6774 раз(а).

Подборка текстов стандартных документов.
Просмотров 57439 раз(а).

Учебник PHP - Самоучитель
Просмотров 5057 раз(а).

Документация на MySQL (учебник & справочное руководство)
Просмотров 11161 раз(а).

Внешние атаки...
Просмотров 6875 раз(а).

Учебник PHP.
Просмотров 4073 раз(а).

SSI в примерах.
Просмотров 1110 раз(а).



 
 
| Добавить в избранное | Сделать стартовой | Помощь





Учебник РНР
НазадГлава 14. Ссылки. Разъяснения. Вперёд

Что делают ссылки

Ссылки в PHP дают возможность двум переменным ссылаться на одно содержимое.
Если вы:

$a =& $b

это означает, что $a и $b указывают на одну и ту же переменную.

Примечание: $a и $b здесь абсолютно эквивалентны, но это не означает, что $a указывает на $b или наоборот. Это означает, что $a и $b указывают на одно место.

Такой же синтаксис можно использовать в функциях, возвращая ссылки, и в операции new (в PHP 4.0.4 и позднее):

$bar =& new fooclass();
$foo =& find_var ($bar);

Примечание: если не использовать операцию &, это приведёт к копированию объекта. Если вы используете $this в классе, операция проводится над текущим экземпляром этого класса. Присвоение без & копирует экземпляр (например, данный объект), а $this работает с этой копией, что не всегда желательно. Обычно вам нужно иметь один экземпляр для работы, из соображений производительности и использования памяти.

Хотя вы можете использовать операцию @ для скрытия любых ошибок в конструкторе при использовании её как @new, это не сработает в операторе &new. Это ограничение Zend-Машины, нарушение которого приводит к ошибке разборщика.

Второе, что делают ссылки - передают переменные по ссылке. При этом локальная переменная в функции и переменная в области видимости вызывателя ссылаются на одно и то же содержимое. Пример:

function foo (&$var)
{
    $var++;
}

$a=5;
foo ($a);

присвоит $a значение 6. Это происходит, потому что в функции foo переменная $var ссылается на то же содержимое, что и переменная $a. См. также детальное объяснение передачи по ссылке.

Третье, что могут ссылки - возвращают значение по ссылке.


Назад Оглавление Вперёд
Ссылки. Разъяснения. Вверх Чем ссылки не являются


Если Вы не нашли что искали, то рекомендую воспользоваться поиском по сайту:
 





Copyright © 2005-2016 Project.Net.Ru