Авторский знак. Seosait21.ru Есть у человека надежда. Пока не поздно. Вгрызайся и изучай.
Нажимай и поддержи.

Пн Вт Ср Чт Пт Сб Вс
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30 31


Чувашия-это моя Россия

Ссылочные переменные в PHP.

Знайте при создании сайта, что существуют три разновидности ссылок:

 
         -жесткие, 
         -символические,
         -ссылки на объекты  

Жесткие ссылки при создании сайта.

Жесткая ссылка - просто переменная, которая является синонимом другой переменной. Чтобы создать жесткую ссылку, нужно использовать оператор =&. Данный крючковатый знак & также крючковато называется амперсанд. Хотя этот символ к нам переехал из старомодных Британских островов( точнее оттуда В Америку, ну, из Америки по всему миру разлетелось) и является сокращенной формой выражения =and ( читается как равно И). Далее смотрите примеры, жесткой ссылки:

                  < $php                 
                           $а = 12;
                           $b =& $а;	//	теперь $b — то же самое, что и $а
                           $b =0;	//	на самом деле $а=0
                           echo "b=$b,	а=$а";	//	выводит "b=0, а=0"
                  $ >

Вот, еще пример, как жесткая ссылка работает, потому как жесткая ссылочная переменная - это синоним другой переменной:

                   7

Тут еще проще понять, что такое жесткая ссылка. Вот, создаём переменную a, которой присваиваем значение 3. Дальше составляем жёсткую ссылку b на переменную a( заметьте перед переменной стоит знак амперсенда). Затем изменяем переменную a. Так как переменная b - это синоним переменной a, потому изменяется b также. То есть значение одно, а переменных, ссылающихся на это значение, две.

В рекомендациях говорится, что: "Переменная существует до тех пор, пока на неё ссылается хотя бы одна ссылка". Поэтому пока не будут удалены все ссылки на ячейку памяти, в которой хранится значение, наша память не освободится. Для того, чтобы избавиться от переменной a необходимо написать следующие строки:

                    unset($a);
                    unset($b);

Только после этих строк unset($a); и unset($b); переменная исчезнет.

Ссылаться можно не только на переменные, но и на элементы массива (этим жесткие ссылки выгодно отличаются от символических). Например:

                  < ?php
                           $А = array(
                           'магазин' => 'Русский хлеб',
                           'акция' => 'Ешьте в полный рот'
                            );
                           $r =& $A['магазин'];//$r — как элемент с
                                               // индексом 'магазин'
                           $r = "Каравай"; / на самом деле 
                           $А['магазин'] = "Каравай";
                           echo $А['магазин']; // выводит "Каравай"
                  $ >

элемент массива, для которого планируется создать жесткую ссылку, может и не существовать. Например:

                   < ?php ## Жесткая ссылка на несуществующий элемент массива.
                          $А = array(
                          'ведро' => '499 руб. 05 коп.',
                          'ванна полиэтиленовая' => '1234 руб.17 коп.'
                            );
                          $b =& $А['таз'];// $b — то же, что и элемент с индексом 'таз'
                          echo "Элемент с индексом 'таз': ".$А['таз']."< br>";
                          echo "Тип несуществующего элемента таз': ".gettype($А['таз']);
                   ? >

В результате выполнения этой программы, хотя ссылке $b и не было ничего присвоено, в массиве $А создастся новый элемент с ключом 'таз' и значением NULL;

Другая ссылка, по сравнению с жесткой ссылкой, не особо-то важная. Но, озвучим и об этой ссылке. Символическая ссылка - это переменная, которая содержит строковое значение с именем другой переменной. Сначала посмотрите пример:

                   < ?php
                   $a = 11;
                   $b = "a";
                   echo $$b;
                   ? >

В итоге отобразится число "11". Заметьте, что использовали конструкцию из двух знаков "$". Такая конструкция добирается до значения переменной, на которую ссылается символическая ссылка. Как уже сказано, символические ссылки не особо важны, в отличии от жёстких, и постарайтесь их не использовать, если не хотите себе лишних проблем. Но, знать то надо.

Ссылка в PHP это псевдоним (алиас) или синоним, как хотите, который позволяет присваивать двум переменным одинаковое значение. Начиная с PHP5 объектная переменная больше не содержит сам объект как значение. Такая переменная содержит только идентификатор объекта, который позволяет найти конкретный объект при обращении к нему. Если объект отссылается как аргумент функции, то эти разные переменные не являются псевдонимами (алиасами): они содержат копию идентификатора, который указывает на один и тот же объект. Ну, составили выражения. Поди ж разберись. Это тот случай, когда эти строчки галопом пройтись, ничего не потеряешь, потому что по ходу создания сайта еще Вы не раз столкнетесь с идентификаторами и объектами при составлении ссылок.

В PHP4 объекты обрабатывались также как и простые типы данных, это часто приводило к появлению нескольких копий одного и того же объекта, но, теперь в PHP5 такого не происходит, потому что каждый объект получает свой собственный числовой идентификатор ( handle), который он используется при обращении к объекту.


seosait21.ru
HTML

seosait21.ru
CSS

seosait21.ru
Web-диз.
HTML ссылка CSS ссылка ...

seosait21.ru
JavaScript

seosait21.ru
PHP

seosait21.ru
JQuery
JavaScript ссылка PHP ссылка JQuery ссылка

seosait21.ru
SEO.

seosait21.ru
MySQL

seosait21.ru
XML
... ... ...

обратно на главную     назад    дальше     вперед

ПОНРАВИЛОСЬ?
ПОДЕЛИСЬ с ДРУЗЬЯМИ: