Neste tutorial de nosso curso de PHP, vamos aprender o que é a
precedência de operadores matemáticos e como ela funciona em
desenvolvimento web.
• Precedência: O que é?
Quanto é: 1+2*3 ?
Alguns podem fazer a multiplicação antes, e daria 7.
Outros fariam a soma primeiro, e o resultado seria 9.
"Ah, mas é só lembrar da Matemática da escola".
Sim, em parte sim. Porém, em programação PHP, temos diversos
operadores, que não tem na escola, como incremento e decremento (vamos
aprender melhor na seção de Laços e Loopings).
Mas, o computador não pode ter dúvidas, toda máquina deve resultar no
mesmo valor como resultado de uma expressão matemática.
Visando deixar isso bem claro, existe uma precedência de operadores.
▪ Precedência de Operadores
Da maior (de cima), pra menor (indo pra baixo), a ordem que o PHP vai
executar as operações é:
1. () : Parêntesis
2. ++ -- : Operadores de incremento e decremento
3. ! : Operador lógico
4. * / % : Operadores aritméticos
5. + - . : Operadores aritméticos e de string
6. << >> : Bitwise
7. < <= > >= <> : Operadores de comparação
8. == != === !== : Operadores de comparaçãoNão se estresse com os operadores que não conhece, você vai aprendê-los
durante nosso curso, lá na frente, sem pressa.
Note que o operador mais poderoso é o de parêntesis.
No caso inicial de nosso tutorial:
1 + 2*3 = 1 + 6 = 7
(1+2)*3 = 3*3 = 9
Ou seja, sempre que tiver expressões grandes e complicadas, saia
colocando parêntesis, até deixa mais legível seu código.
Nos exercícios propostos da seção Básico do PHP, vamos usar algumas
expressões maiores (como calcular área de círculo, converter temperaturas
etc).
▪ Exercícios de Precedência de Operadores
Digite nos comentários os seus resultados:
1. ((1 + 2) * 3 - 4) * 5
2. (6 - 7) * 8 * 9 + 10
3. (10 + 9 - 8 + 7) * 6