Читайте также: |
|
Оператор представляет собой символическое обозначение некоторого действия, выполняемого с операндами в выражении. Многие операторы известны любому программисту, но вы должны помнить, что РНР выполняет автоматическое преобразование типов на основании типа оператора, объединяющего два операнда, — в других языках программирования это происходит не всегда.
Приоритет и ассоциативность операторов являются важными характеристиками языка программирования (см. раздел "Ассоциативность операторов" этой главы). В табл. 4.1 приведен полный список всех операторов, упорядоченных по убыванию приоритета. Приоритет, ассоциативность и сами операторы подробно рассматриваются в разделах, следующих за таблицей.
Таблица 4.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 |
Объединяя операторы и операнды, вы получите более сложные выражения для выполнения нетривиальных вычислений. Пример:
$total_cost = $cost + ($cost * 0.06); // прибавить к цене 6-процентный налог |
Приоритет операторов
Приоритет является характеристикой операторов, определяющей порядок выполнения действий с окружающими операндами. В РНР используются те же правила приоритета, что и в школьном курсе математики. Пример:
$total_cost = $cost + $cost * 0.06; |
Приведенная команда эквивалентна следующей:
$total cost = $cost + ($cost * 0.06); |
Это объясняется тем, что оператор умножения обладает более высоким приоритетом по сравнению с оператором сложения.
Дата добавления: 2015-08-13; просмотров: 74 | Нарушение авторских прав
<== предыдущая страница | | | следующая страница ==> |
Текстовое поле | | | Ассоциативность операторов |