ГЛАВА 3: Выражения, операторы и управляющие конструкции.
Операторы
Оператор представляет собой символическое обозначение некоторого действия, выполняемого с операндами в выражении. Многие операторы известны любому программисту, но вы должны помнить, что РНР выполняет автоматическое преобразование типов на основании типа оператора, объединяющего два операнда, — в других языках программирования это происходит не всегда.
Приоритет и ассоциативность операторов являются важными характеристиками языка программирования(см. раздел «Ассоциативность операторов» этой главы). В табл. 3.1 приведен полный список всех операторов, упорядоченных по убыванию приоритета. Приоритет, ассоциативность и сами операторы подробно рассматриваются в разделах, следующих за таблицей.
Таблица 3.1. Операторы РНР
Оператор
Ассоциативность
Цель
()
-
Изменение приоритета
new
-
Создание экземпляров объектов
! ~
П
Логическое отрицание, поразрядное отрицание
++ --
П
Инкремент, декремент
@
П
Маскировка ошибок
/ * %
Л
Деление, умножение, остаток
+ - .
Л
Сложение, вычитание, конкатенация
<< >>
Л
Сдвиг влево, сдвиг вправо(поразрядный)
< <= > >=
-
Меньше, меньше или равно, больше, больше или равно
== != === <>
-
Равно, не равно, идентично, не равно
& ^ |
Л
Поразрядные операции AND, XOR и OR
&& ||
Л
Логические операции AND и OR
?:
П
Тернарный оператор
= += *= /= .=
П
Операторы присваивания
%= &= |= ^=
<<= >>=
AND XOR OR
Л
Логические операции AND, XOR и OR
После знакомства с концепциями операторов и операндов следующие примеры выражений выглядят значительно понятнее:
$а = 5; // Присвоить целое число 5 переменной $а
$а = "5"; // Присвоить строковую величину "5" переменной $а
$sum = 50 + $some_int; // Присвоить сумму 50 + $some_int переменной $sum
$wine = "Zinfandel"; // Присвоить строку "Zinfandel" переменной $wine
$inventory++; // Увеличить значение $inventory на 1
Объединяя операторы и операнды, вы получите более сложные выражения для выполнения нетривиальных вычислений. Пример: