Выражения в PHP
Выражения - это краеугольный камень PHP. Почти все, что вы пишите в PHP, является выражением. Выражения являются "кирпичиками", из которых состоят PHP-программы. Под выражением в PHP понимается то, что имеет значение.
Основными формами выражений являются константы и переменные. Например, если вы записываете "$a = 100", вы присваиваете '100' переменной $a:
$a = 100;
В приведенном примере $a это переменная, = это оператор присваивания, а 100 это и есть выражения. Его значение 100.
Выражением может быть и переменная, если ей сопоставлено определенное значение:
$x = 7;
$y = $x;
В первой строке рассмотренного примера выражением является константа 7, а во второй строке - переменная $x
, т.к. ранее ей было присвоено значение 7. $y = $x
также является выражением.
Немного более сложными примерами выражений являются функции. Например, рассмотрим следующую функцию:
<?php
function funct ()
{
return 5;
}
?>
Исходя из того, что вы хорошо знакомы с концепцией функций (если нет, то прочитайте раздел о пользовательских функциях),
вы полагаете, что запись $x = funct() абсолютно эквивалента записи $x = 5, и вы правы.
Функции - это выражения, значением которых является то, что возвращает функция.
Поскольку funct() возвращает 5, значением выражения 'funct()' является 5.
Как правило, функции возвращают не статическое значение, а вычисленное.
PHP поддерживает три типа скалярных значений: целочисленные, с плавающей точкой и строковые значения
(скалярными являются значения, которые вы не можете 'разбить' на меньшие части, в отличие, например, от массивов).
PHP поддерживает также два комбинированных (не скалярных) типа: массивы и объекты.
Каждый из этих типов значений может присваиваться переменной или возвращаться функцией.
PHP - это язык, ориентированный на выражения и рассматривающий почти все как выражение.
Вернемся к примеру, с которым мы уже имели дело: '$x = 7'.
Легко заметить, что здесь присутствуют два значения - значение целочисленной константы '7' и значение переменной $x, также принимающей значение 7.
Но на самом деле здесь присутствует и еще одно значение - значение самого присвоения.
Само присвоение вычисляется в присвоенное значение, в данном случае - в 7.
На практике это означает, что '$x = 7', независимо от того, что оно делает, является выражением со значением 7.
Таким образом, запись '$y = ($x = 7)' равносильна записи '$x = 7; $y = 7;' (точка с запятой обозначает конец выражения).
Поскольку операции присвоения анализируются справа налево, вы также можете написать '$y = $x = 7'.
Выражения в PHP связаны с арифметическими операциями, с которыми вы можете ознакомиться далее.