Mateus Santana .com Tecnologia, informática e linguagens de programação.

27mar/110

Aula 03 – Operadores

curso de php aula 3

Operadores são usados para se obter um resultado a partir de um ou mais valores. Existem três tipos de operadores. Os operadores unários, que são usados para apenas para um valor, exemplo: ! (negação). Os operadores binários que são os mais usados, como exemplo: && e ==. E o operador ternário, que veremos ao fim dessa aula.

1. Operadores aritméticos

Acredito que isso não seja nenhuma surpresa para quem já programou em alguma outra linguagem. Os operadores são basicamente os mesmos. São eles:

Operador Símbolo Exemplo Resultado
Adição + 10 + 4 14
Subtração - 10 - 4 6
Multiplicação * 10 * 4 40
Divisão / 10 / 4 2.5
Resto da divisão % 10 % 4 2

2. Operadores binários

São os famosos operadores bit-a-bit, onde é possível ligar e desligar bits entre dois números inteiros. Caso seja usado uma string no lugar de um inteiro o mesmo será convertido para inteiro usando os valores da tabela ASCII. Numa operação bit-a-bit é usado o valor binário de um determinado número.

Operador Símbolo
Negação (NOT) ~
Ou (OR) |
E (AND) &
Ou exclusivo (XOR) ^
Deslocamento à esquerda <<
Deslocamento à direita >>

Considere os números 10 e 14 que possuem as seguintes representações:

Decimal Binário
10 1010
14 1110

Exemplo:

$a = 10;                // 1010
$b = 14;                // 1110

echo decbin(~$a);       // 0101
echo decbin($a | $b);   // 1110
echo decbin($a & $b);   // 1010
echo decbin($a ^ $b);   // 0100
echo decbin($a << 2);   // 101000
echo decbin($a >> 2);   // 0010

Observação: a função string decbin (int) retorna uma string com o valor binário de um número inteiro.

3. Operadores de atribuição

Na linguagem PHP existem várias maneiras de se atribuir um valor a uma variável ou função, que podem ser de simples atribuição, atribuição com adição, atribuição com subtração, etc.

Operador Símbolo
Atribuição com adição +=
Atribuição com subtração -=
Atribuição com multiplicação *=
Atribuição com divisão /=
Atribuição com resto da divisão %=
Atribuição com concatenação .=
Atribuição com operador binário OR |=
Atribuição com operador binário AND &=
Atribuição com operador binário XOR ^=
Atribuição com deslocamento à esquerda <<=
Atribuição com deslocamento à direita >>=

Exemplo:

$a = 10;
$a += 5;
echo $a;   // 15

$a -= 5;
echo $a;   // 10

$a *= 5;
echo $a;   // 50

$a /= 5;
echo $a;   //10

$a %= 8;
echo $a;   // 2

$a = "Bom ";
$a .= "dia!";
echo $a;       // Bom dia!

$a = 10;
$a |= 14;
echo decbin($a);   //1110

$a = 10;
$a &= 14;
echo decbin($a);   //1010

$a = 10;
$a ^= 14;
echo decbin($a);   //0100

$a = 10;
$a <<= 2;
echo decbin($a);   //101000

$a = 10;
$a >>= 2;
echo decbin($a);   //0010

4. Operadores de incremento e decremento

Assim como na maioria das linguagens o PHP também possui "atalhos" para operações de incremento e decremento que são bastante utilizados para facilitar e agilizar a programação. São eles:

Operador Descrição Exemplo
Pré incremento Incrementa a variável em um e retorna seu valor ++$x
Pós incremento Retorna o valor da variável e incrementa seu valor em um $x++
Pré decremento Decrementa a variável em um e retorna seu valor --$x
Pós decremento Retorna o valor da variável e decrementa seu valor em um $x--

Exemplo:

$a = 5;
$b = ++$a;
echo $a . ' ' . $b;   // 6 6

$a = 5;
$b = $a++;
echo $a . ' ' . $b;   // 6 5

$a = 5;
$b = --$a;
echo $a . ' ' . $b;   // 4 4

$a = 5;
$b = $a--;
echo $a . ' ' . $b;   // 4 5

5. Operadores relacionais

Operadores relacionais são usados para testar determinadas condições. Suas comparações retornam verdadeiro ou falso.

Operador Símbolo
Igualdade ==
Testa igualdade e tipo ===
Maior >
Menor <
Maior ou igual >=
Menor ou igual <=
Diferente !=
Testa diferença e tipo !==

Exemplo:

var_dump(5 == 5);     // true
var_dump(5 == '5');   // true
var_dump(5 === '5');  // false
var_dump(5 > 3);      // true
var_dump(5 < 3);      // false
var_dump(5 >= 6);     // false
var_dump(5 <= 6);     // true
var_dump(5 != 5);     // false
var_dump(5 !== '5');  // true

Observação: a função void var_dump (mixed) escreve o tipo e valor de uma variável ou expressão.

6. Operadores lógicos

Operadores lógicos servem para determinar se o resultado entre duas ou mais sentenças são verdadeiros ou falsos.

Operador Símbolo
Negação (NOT) !
E (AND) &&
AND (equivale a &&) AND
Ou (OR) ||
OR (equivale a ||) OR
Ou exclusivo (XOR) XOR

Exemplo:

var_dump(! 5=='5');           // false
var_dump(5===5 && 1==true);   // true
var_dump(5>3 || 1==false);    // true
var_dump(true AND 10%3);      // true
var_dump(5<=6 OR false);      // true
var_dump(10%5 XOR 6>3);       // true

A diferença entre os operadores && e AND e || e OR está na sua precedência. Veja mais em http://php.net/manual/pt_BR/language.operators.precedence.php.

7. Operador ternário

O operador ternário serve para selecionar entre dois valores a partir de uma expressão lógica. Abaixo um exmplo de seu uso:

$a = (2==2) ? "Verdadeiro" : "Falso";
echo $a;   // Verdadeiro

$a = (true && 3==='3') ? "TRUE" : "FALSE";
echo $a;   // FALSE

$a = 3;
($a > 5) ? executa_funcao_1() : executa_funcao_2();   // Executa funçao 2

Acho que não esqueci de nenhum. Qualquer dúvida ou sugestão comentem.

Até a próxima.

Comentários (0) Trackbacks (0)

Sem comentários


Leave a comment

(required)

Sem trackbacks