Оглавление

Приоритет операторов

Правила  приоритетности  операторов  определяют  порядок вычислений. Вот пример неоднозначного выражения:

echo 3 * 4 + 5; 

Непонятно, то ли 3 умножается на 4 и потом к результату прибавляется 5, что дает 17; то ли суммируются 4 и 5, а потом результат умножается на 3, что дает 27. Если запустить этот сценарий, в результате получим 17.

 

Это произошло из-за того, что умножение имеет больший приоритет, чем суммирование. Поэтому, когда эти операторы встречаются в одном выражении, умножение выполняется первым, при этом используются значения, которые непосредственно стоят вокруг оператора умножения.

 

Если  нужно  выполнить  суммирование  раньше,  можно использовать круглые скобки:

echo 3 * (4 + 5);
В этом случае получим 27.
Порядок выполнения арифметических операций отвечает порядку, известному со школьной скамьи: скобки, экспонента, умножение/деление и суммирование/вычитание.
Полный список приоритета операций в РНР, включая множество операторов, которые здесь не упоминаются, можно найти в электронном справочнике по адресу:

http://www.php.net/manual/en/language.operators.php

Комментарии принадлежат их авторам. Мы не несем ответственности за их содержание.
Отправитель Нити