Відмінності між версіями «Оператори присвоєння PHP»
Bobchik (обговорення • внесок) |
Bobchik (обговорення • внесок) |
||
Рядок 45: | Рядок 45: | ||
<br> | <br> | ||
$a = ($b = 4) +5; <br> | $a = ($b = 4) +5; <br> | ||
− | ($a буде дорівнює 9, <br> | + | ($a буде дорівнює 9,<br> |
− | $b буде дорівнює 4) <br> | + | $b буде дорівнює 4) <br\> |
<br> | <br> | ||
Змінній ліворуч від оператора буде присвоєне значення, | Змінній ліворуч від оператора буде присвоєне значення, | ||
Рядок 64: | Рядок 64: | ||
У результаті: $b="Привіт усім" <br> | У результаті: $b="Привіт усім" <br> | ||
<br> | <br> | ||
− | Скорочено позначає комбінацію операцій конкатенації і присвоєння | + | Скорочено позначає комбінацію операцій конкатенації і присвоєння (спочатку додається рядок,потім отриманий рядок записується в змінну)<br> |
Версія за 15:35, 14 квітня 2010
Базовый оператор присвоения обозначается как =. На первый взгляд может показаться, что это оператор "равно". На самом деле это не так. В действительности, оператор присвоения означает, что левый операнд получает значение правого выражения, (т.е. устанавливается результирующим значением).
Результатом выполнения оператора присвоения является само присвоенное значение. Таким образом, результат выполнения $a = 3 будет равен 3. Это позволяет использовать конструкции вида:
<?php
$a = ($b = 4) + 5; // результат: $a установлена значением 9, переменной $b присвоено 4.
?>
В дополнение к базовому оператору присвоения имеются "комбинированные операторы" для всех бинарных арифметических и строковых операций, которые позволяют использовать некоторое значение в выражении, а затем установить его как результат данного выражения. Например:
<?php
$a = 3;
$a += 5; // устанавливает $a значением 8, аналогично записи: $a = $a + 5;
$b = "Hello ";
$b .= "There!"; // устанавливает $b строкой "Hello There!", как и $b = $b . "There!";
?>
Обратите внимание, что присвоение копирует оригинальную переменную в новую (присвоение по значению), таким образом все последующие изменения одной из переменных на другой никак не отражаются. Начиная с PHP 4, также поддерживается присваивание по ссылке, используя синтаксис $var = &$othervar;
'Присвоение по ссылке' означает, что обе переменные указывают на одни и те же данные и никакого копирования не происходит.
Приклад: присвоювання "="
$a = ($b = 4) +5;
($a буде дорівнює 9,
$b буде дорівнює 4) <br\>
Змінній ліворуч від оператора буде присвоєне значення,
отримане в результаті виконання яких-небудь операцій або змінної/константи з правої сторони.
Приклад: скорочення "+="
$a += 5;
(еквівалентно $a = $a + 5;)
Скорочення. Додає до змінної число і потім привласнює їй отримане значення.
Приклад: операція конкотенації та присвоення ".="
$b = "Привіт "; $b .= "усім";
(еквівалентно $b = $b . "усім";)
У результаті: $b="Привіт усім"
Скорочено позначає комбінацію операцій конкатенації і присвоєння (спочатку додається рядок,потім отриманий рядок записується в змінну)