Довідкові змінні php

Відео: Уроки Java - №6 Посилальні змінні

Довідкові змінні PHP

Відео: Курс уроків PHP для початківців | # 3 Змінні і область видимості

Довідкові змінні в PHP - це заміна покажчиків в C ++. Але так як багато хто не знайомі з мовою C ++, то я розповім про посилальних змінних більш детально в цій статті. мабуть, посилальні змінні в PHP - це одне з основних понять, яке необхідно знати, інакше Ви навіть не зможете користуватися довідником.

Почнемо з першого типу посилальних змінних - жорсткі посилання. Жорстка посилальна змінна - це синонім іншої змінної:

Відео: OOP-1-1-10 Посилальні типи і типи-значення

lt ;?php
$ a
=5-
$ b
=$ a-
$ a
=8-
echo $ b
-
?gt;

Тепер пояснюю, що тут написано. Спочатку ми створюємо змінну a, якої присвоюємо значення 5. Далі ми створюємо жорстку посилання b на змінну a. Потім змінюємо змінну a. І з огляду на те, що b - це синонім a, у нас змінюється і b теж. Тобто значення одне, а змінних, що посилаються на це значення, дві.

Тепер дуже важливе правило: "Мінлива існує до тих пір, поки на неї посилається хоча б одне посилання". Тобто поки ми не видалимо всі посилання на комірку пам`яті, в якій зберігається значення, наша пам`ять не звільниться. Наприклад, щоб позбутися від змінної в прикладі вище необхідно написати такі рядки:

unset($ a) -
unset
($ b) -



Тільки після цих рядків змінна зникне.

Переходимо до другого типу (і останній) посилальних змінних в PHP, до символьних посилань. символічна посилання - це змінна, яка містить строкове значення з ім`ям іншої змінної. Раджу вдуматися в це визначення, щоб стало зрозуміло. І відразу приклад:

lt ;?php
$ a
=17.1-
$ b
="A"-
echo $$ b
-
?gt;



В результаті, як не важко здогадатися, вилізе число "17.1". Зверніть увагу, що ми використовували конструкцію з двох знаків"$". Така конструкція добирається до значення змінної, на яку посилається символічна посилання.

В принципі, символічні посилання не особливо важливі, на відміну від жорстких, і постарайтеся їх не використовувати, так як вони ускладнюють читання коду.

Тепер пояснюю, чому без знання жорсткої посилальної змінної неможливо користуватися довідником, а, отже, неможливо писати скрипти на мові PHP. Давайте з Вами розберемо приклад однієї з функцій. Припустимо, функція sort (array $ Array), яка приймає як параметр масив. А на виході сортує його. Постає питання: "Як працює ця функція?"Чи то вона приймає масив, сортує його і повертає, при цьому аргумент ніяк не змінюється (тобто вихідний масив не змінюється взагалі). Чи то саме аргумент змінюється і в підсумку, новий масив не повертається, а змінюється конкретно сам масив, який ми передали, тим самим, втрачаючи вихідний масив. Вдумайтеся в ці рядки.

Для того, щоб відповісти на це питання, треба подивитися, що передається в аргумент: просто змінна, і тоді вихідний масив не змінюється, або ж все-таки передається жорстка посилання на змінну, тоді, зрозуміло, вихідний масив зміниться. В параметрах функції sort (array $ Array) чітко вказано, що передається жорстка посилання ($ array), Про що свідчить знак "", Тому зміниться вихідний масив $ array.

Сподіваюся, я Вам довів, що знання посилальних змінних в PHP, а особливо жорстких довідкових змінних, обов`язково. І дуже сподіваюся, що Ви розібралися з цією, в общем-то, складним завданням.

Поділися в соціальних мережах:

Схожі
Команда setlocal - зміна змінних середовища для поточного командного файлу.Команда setlocal - зміна змінних середовища для поточного командного файлу.
Цикли в jаvascriptЦикли в jаvascript
Як дізнатися pid скриптаЯк дізнатися pid скрипта
Змінні оточення в linuxЗмінні оточення в linux
Умовний оператор в phpУмовний оператор в php
Видаляємо невикористовувані драйвера в windows 7Видаляємо невикористовувані драйвера в windows 7
Змінні в cssЗмінні в css
Оператор еквівалентності phpОператор еквівалентності php
Що таке замикання в jаvascript.Що таке замикання в jаvascript.
Основний інструмент при пошуку помилок в кодіОсновний інструмент при пошуку помилок в коді
» » Довідкові змінні php