27 operadores-no-php - CodeHamper

Operadores no PHP

Operadores utilizados no PHP




Atribuição

Um operador de atribuição é utilizado para definir uma variável atribuindo-lhe um valor. O operador básico de atribuição é = .

<?php
   var += 5;   //Soma 5 em $var;
   var -= 5; //Subtrai 5 em $var;
   var *=5; //Multiplica $var por 5;
   var /=5;  //Divide $var por 5;
?>

Operadores   |   Descrição
++$a  | Pré-incremento. Incrementa $a em um e, então, retorna $a.
$a++  | Pós-incremento. Retorna $a e, então, incrementa $a em um.
--$a  | Pré-descremento. Decrementa $a em um e, então, retorna $a.
$a--  | Pós-descremento. Retorna $a e, então, decrementa $a em um.

Aritméticos

Operadores aritméticos são utilizados para realização de cálculos matemáticos.

Operadores | Descrição

+  | Adição.
-   | Subtração.
*  | Multiplicação.
/   | Divisão.
% | Módulo (resto da divisão).

Em cálculos complexos, procure utilizar parênteses, sempre observando as prioridades aritméticas. Por exemplo:

<?php
   $a = 2;
   $b = 4;
   echo $a+3*4+5*$b;   // resultado = 34
   echo ($a+3)*4+(5*$b); // resultado = 40
?>

O PHP realiza automaticamente a conversão de tipos em operações:

<?php
  //declaração de uma string contendo 10
  $a = '10' ;
  //soma + 5;
  echo $a+5;
?>

Resultado
15

Relacionais

Operadores relacionais são utilizados para realizar comparações entre valores ou expressões, resultando sempre um valor boolean ( TRUE ou FALSE).

Comparadores   |  Descrição
==             |  Igual. Resulta verdadeiro (TRUE) se expressões forem iguais.
===           | Idêntico. Resulta verdadeiro (TRUE) se as expressões forem iguais e do mesmo tipo de dados.
!= ou <>     | Diferente. Resulta verdadeiro se as variáveis forem diferentes.
<                | Menor.
>                | Maior que.
<=              | Menor ou igual
>=              | Maior ou igual

Veja a seguir alguns teste lógicos e seus respectivos resultados. No primeiro caso, vemos a utilização errada do operador de atribuição “ = ” para realizar uma comparação: o operador sempre retorna o valor atribuído.

<?php
  if($a = 5){
    echo 'essa operação atribui 5 a variável $a e retorna verdadeiro' ;
  }
?>

Resultado
essa operação atribui 5 a variável $a e retorna verdadeiro

No exemplo que segue, declaramos duas variáveis, uma integer e outra string. Neste caso, vemos a utilização dos operadores de comparação == e != .

<?php
   $a = 1234;
   $b = '1234' ;
   if($a == $b){
        echo '$a e $b são iguais' ;
   }
   elseif($a != $b){
      echo '$a e $b são diferentes' ;  
}

Resultado
$a e $b são iguais

No próximo caso, além da comparação entre as variáveis, comparamos também os tipos de dados das variáveis.

<?php
  $c = 1234 ;
  $d = '1234' ;
  if($c === $d){
     echo '$c e $d são iguais e do mesmo tipo' ;
  }
  if($c !== $d){
      echo '$c e $d são de tipos diferentes' ;
  }
?>

Resultado
$c e $d são de tipos diferentes

O PHP considera o valor zero como sendo falso em comparações lógicas. Para evitar erros semânticos em retorno de valores calculados por funções que podem retornar tanto um valor booleano quanto um inteiro, podemos utilizar as seguintes comparações:

<?php
  $e = 0;
  // zero sempre é igual a FALSE
  if($e == FALSE){
    echo '$e é falso' ;
  }
  // testa se $e é do tipo FALSE
  if($e === FALSE){
    echo ' $e é do tipo false' ;
  }
  // testa se $e é igual a zero e do mesmo tipo que zero
  if($e === 0){
     echo ' $e é zero mesmo' ;
  }
?>

Resultado
$e é falso
$e é zero mesmo

Lógicos

Operadores lógicos são utilizados para combinar expressões lógicas entre si, agrupando testes condicionais.

Operador       | Descrição
($a and $b)    | E: Verdadeiro (TRUE) se tanto $a quanto $b forem verdadeiros.
($a or $b)      | OU: verdadeiro (TRUE) se $a ou $b forem verdadeiros.
($a xor $b)    | XOR: Verdadeiro (TRUE) se $a ou $b forem verdadeiros, de forma exclusiva.
(! $a)            | NOT: Verdadeiro (TRUE) se $a for FALSE.
($a && $b)     | E: Verdadeiro (TRUE) se tanto $a quanto $b forem verdadeiros.
($a || $b)      | OU: Verdadeiro (TRUE) se $a ou $b forem verdadeiros.

Observação: or e and precendência maior que && ou || .

No programa a seguir, se as variáveis $vai_chover e $estar_frio forem verdadeiras ao mesmo tempo, será impresso no console “Não vou sair de casa”.

<?php
  $vai_chover = TRUE;
  $estar_frio = TRUE;
  if($vai_chover and $esta_frio){
    echo 'Não vou sair de casa'  ;
  }
?>

Resultado
Não vou sair de casa

Já neste outro programa, caso um variável seja TRUE e a outra seja FALSE (OU exclusivo), será impresso no console “Vou pensar duas vezes antes de sair”.

<?php
  $vai_chover = FALSE;
  $esta_frio = TRUE;
  if($vai_chover xor $estar_frio){
    echo 'Vou pensar duas vezes antes de sair' ;
  }
?>

Resultado
Vou pensar duas vezes antes de sair


CodeHamper © 2017 - Todos os direitos reservados