Resumo : neste tutorial, você aprenderá sobre os operadores PHP e como usá-los de forma eficaz em seu script.
Um operador pega um ou mais valores, conhecidos como operandos, e executa uma operação específica sobre eles.
Por exemplo, o operador + soma dois números e retorna a soma deles.
PHP suporta muitos tipos de operadores:
- Operadores aritméticos
- Operadores de Atribuição
- Operadores bit a bit
- Operadores de comparação
- Operadores de incremento/decremento
- Operadores lógicos
- Concatenando Operadores
Operadores aritméticos
Os operadores aritméticos requerem valores numéricos. Se você aplicá-los a valores não numéricos, eles serão convertidos em valores numéricos antes de realizar a operação aritmética.
A seguir está a lista de operadores aritméticos:
Operador | Nome | Descrição |
---|---|---|
+ | Adição | Retornar a soma de dois operandos |
– | Subtração | Retornar a diferença entre dois operandos |
* | Multiplicação | Retornar o produto de dois operandos |
/ | Divisão | Retornar o quociente de dois operandos |
% | Módulo | Retorna o restante da divisão do primeiro operando pelo segundo |
O exemplo a seguir usa os operadores aritméticos:
<?php
$x = 20;
$y = 10;
// add, subtract, and multiplication operators demo
echo $x + $y . '<br/>'; // 30
echo $x - $y . '<br/>'; // 10
echo $x * $y . '<br/>'; // 200
// division operator demo
$z = $x / $y;
echo gettype($z) . '<br/>'; // integer
$z = $y / $x;
echo gettype($z) . '<br/>'; // double
// modulus demo
$y = 15;
echo $x % $y . '<br/>'; // 5
Linguagem de código: HTML, XML ( xml )
Operadores de comparação
Os operadores de comparação permitem comparar dois operandos.
Um operador de comparação retorna um valor booleano, true
ou false
. Se a comparação for verdadeira, o operador de comparação retorna true
; caso contrário, retorna false
.
A seguir está a lista de operadores de comparação em PHP:
Operador | Nome | Descrição |
---|---|---|
== | Igualdade | Retorna true se ambos os operandos forem iguais, caso contrário retorna false . |
=== | Identidade | Retorna true se ambos os operandos tiverem o mesmo tipo de dados e forem iguais, caso contrário retorne false . |
!=== | Não idênticos | Retorna true se ambos os operandos não forem iguais ou não tiverem o mesmo tipo de dados, caso contrário retorne false . |
> | Maior que | Retorne true se o operando à esquerda for maior que o operando à direita, caso contrário retorne false . |
>= | Melhor que ou igual a | Retorne true se o operando à esquerda for maior ou igual ao operando à direita, caso contrário, retorne false . |
< | Menor que | Retorne true se o operando à esquerda for menor que o operando à direita, caso contrário, retorne false . |
<= | Menor ou igual | Retorne true se o operando à esquerda for menor ou igual ao operando à direita, caso contrário, retorne false . |
Operadores lógicos
Os operadores lógicos permitem construir expressões lógicas. Um operador lógico retorna um valor booleano.
PHP fornece os seguintes operadores lógicos:
Operador | Nome | Descrição |
---|---|---|
&& | Lógico E | Retorne true se ambos os operandos forem true , caso contrário retorne false . Se o primeiro operando for false , ele não avaliará o segundo operando porque sabe com certeza que o resultado será false . Isso é conhecido como curto-circuito. |
|| | OU lógico | Retorna true se um dos operandos for true , caso contrário retorna false . Se o primeiro operando for true , não avaliará o segundo. |
xor | XOR lógico | Retorne true se um dos operandos, e não ambos, for true , caso contrário, retorne false . |
! | Não | retorna true se o operando for false , e retorna false se o operando for true . |
Operadores bit a bit
Os operadores bit a bit realizam operações na representação binária dos operandos. O seguinte ilustra operadores bit a bit em PHP:
Operadores | Nome | Resultado |
---|---|---|
$x & $y |
E | Se ambos os bits forem 1, o bit correspondente no resultado será 1; caso contrário, o bit correspondente é 0 |
$x | $y |
Ou (inclusivo ou) | Se ambos os bits forem 0, o bit correspondente no resultado será 0; caso contrário, o bit correspondente é 1 |
$x ^ $y |
Xor (exclusivo ou) | Se um dos bits, mas não ambos, em $x e $y for 1, o bit correspondente no resultado será 1; caso contrário, o bit correspondente é 0 |
~ $x |
Não | Mude o bit 1 para 0 e 0 para 1 no operando $x |
$x << $y |
Deslocar para a esquerda | Desloca os bits à $x esquerda pelo número de casas especificado por $y . |
$x >> $y |
Deslocar para a direita | Desloca os bits para $x a direita pelo número de casas especificado por $y . |
Operadores de incremento/decremento
Os operadores de incremento (++) e decremento (–) fornecem uma maneira rápida de aumentar e diminuir o valor de uma variável em 1.
A tabela a seguir ilustra os operadores de incremento e decremento:
Exemplo | Nome | Valor retornado | Efeito em $a |
---|---|---|---|
++$a |
Pré-incremento | $a + 1 |
Aumenta $a em 1 e depois retorna $a . |
$a++ |
Pós-incremento | $a |
Retorna $a e aumenta $a em 1. |
--$a |
Pré-decremento | $a - 1 |
Diminui $a em 1 e depois retorna $a . |
$a-- |
Pós-decremento | $a |
Retorna $a e depois diminui $a em 1. |
Operador de concatenação
O operador de concatenação (.) permite combinar duas strings em uma. Ele anexa a segunda string à primeira e retorna a string combinada. Por exemplo:
<?php
$str = 'PHP' . ' is ' . ' Awesome!';
echo $str;
Linguagem de código: HTML, XML ( xml )
Operadores de Atribuição
Operador de atribuição ( =
) atribui um valor a uma variável e retorna um valor. O operando à esquerda é sempre uma variável, enquanto o operando à direita pode ser um valor literal, uma variável, uma expressão ou uma chamada de função que retorna um valor. Por exemplo:
<?php
$x = 10;
$y = $x;
$z = ($x = 20); // $z = 20
Linguagem de código: HTML, XML ( xml )
Na primeira expressão, atribuímos $x
valor à variável 10
. No segundo, atribuímos o valor de $x à variável $y. O terceiro é um pouco complicado. Primeiro, atribuímos 20
a $x
. O operador de atribuição ( =
) retorna 20
e então 20
é atribuído à $z
variável.
Além do operador de atribuição básico( =
), o PHP fornece alguns operadores de atribuição:
- mais igual
+=
- menos igual
-=
- dividir igual
/=
- multiplicação igual
*=
- módulo igual
%=
- XOR igual
^=
- AND-igual
&=
- OU igual
|=
- concatenar-igual
.=
Precedência de operadores PHP
A precedência de um operador decide em qual ordem o operador é avaliado em uma expressão.
PHP atribuiu precedência a cada operador. Alguns operadores têm a mesma precedência, por exemplo, as precedências da adição ( +
) e da subtração ( -
) são iguais.
No entanto, alguns operadores têm precedência mais elevada do que outros.
Por exemplo, a precedência do operador de multiplicação ( *
) é maior que a precedência dos operadores de adição ( +
) e de subtração ( ):-
<?php
echo 4 + 5 * 3; // 19
Linguagem de código: HTML, XML ( xml )
Como a precedência do operador de multiplicação ( *
) é maior que a precedência do +
operador add(), o PHP avalia o operador de multiplicação ( *
) primeiro e depois o operador de adição ( *
) em segundo lugar.
Para forçar a avaliação em uma determinada ordem, você coloca a expressão entre parênteses ()
, por exemplo:
<?php
echo (4 + 5) * 3; // 27
Linguagem de código: HTML, XML ( xml )
Neste tutorial, você aprendeu brevemente sobre os operadores PHP mais comumente usados.