Olá amigo usuário que está acompanhando o Guia de PHP, no último tópico havia falado que iríamos fazer um próximo tópico com perguntas e exercícios. Porém, alguns usuários pediram para abordar um tópico de estruturas condicionais e operações matemáticas, ou seja, como fazer um IF, ELSE, SWITCH em PHP. Por este motivo vamos abordar agora este tópico, no próximo falarmos sobre operações matemáticas e depois sim será sobre exercícios e assim fechamos a primeira parte do Guia que se chama INICIANDO. 

Antes de mais nada, gostaria de saber como andam os tópicos, você tem aprendido algo? A informação que está sendo passada, está sendo absorvida? Tens dúvidas sobre algum dos tópicos abordados? Faça nos comentários abaixo. 

O que são estruturas condicionais em PHP? 

As linguagens de programação tem diversas estruturas básicas que as compõem. Falamos já sobre estruturas de laços, funções, variáveis e arrays. Agora falaremos sobre estruturas condicionais. Estas são parte fundamental em qualquer linguagem de programação, em termos básicos, as condições que guiam por onde o código deve prosseguir.  

Uma estrutura condicional é baseada em binário, ou seja, como programação é uma ciência exata, existem apenas duas respostas para uma condição, que são: VERDADEIRO OU FALSO. 

Veja o cenário: O PHP está interpretando o código, ele encontra uma estrutura condicional IF, então ele pergunta ao seu código, a condição a ser comparada é verdadeira ou falsa? Com base na resposta que o PHP vai continuar a execução do código. Se for verdadeira a condição, ele vai percorrer por um caminho, se for falsa por outro.

Operadores Lógicos

Antes de vermos sobre as estruturas condicionais, precisamos entender os operadores lógicos. Eles vão ser fundamentais na criação de uma condição. 

Temos então:  

  • AND (&&): É o comparador E. Usa dois & (e comercial) no IF. Se uma condição for verdadeira E outra também.
    • Ex: Só vamos a praia se for domingo E fizer sol.
  • OR (||): É o comparador OU. Usa dois | (pipe) no IF. Se uma condição for verdadeira OU outra. 
    • Ex: Vamos a praia se for domingo OU fizer sol.

 

Pode ver que as duas comparações acima são totalmente diferentes. Com E, ambas as condições precisam ser verdadeiras para IR A PRAIA. Com OU, vamos ir a praia se for domingo OU se for outro dia qualquer com sol.

Ainda temos:

  • MAIOR (>): Se $a > 10 echo "verdadeiro";
  • MENOR (<): Se $a < 10 echo "verdadeiro";
  • MAIOR OU IGUAL (>=): Se $a >= 10 echo "verdadeiro";
  • MENOR OU IGUAL (<=): Se $a <= 10 echo "verdadeiro";
  • IGUAL (=): Se $a = 10 echo "verdadeiro";
  • DIFERENTE (!=): Se $a != 10 echo "verdadeiro"; 
  • IDÊNTICO (===): Se 10 === 10 echo "verdadeiro";
  • NÃO IDÊNTICO (!===): Se 10 !=== '10' echo "verdadeiro";

Diferença entre IDÊNTICO E IGUAL em PHP:

A diferença entre idêntico e igual em PHP é a comparação do tipo de dados, por exemplo comparação entre STRING (texto) e NUMBER (número). Por exemplo:

$a = '10';
$b = 10;

if($a === $b)
    echo "idêntico";
else
    echo "nao idêntico";
//resultado = nao identico
?>

No exemplo acima, comparamos se $a é idêntico a $b. Vai ser falso. Pois $a é uma STRING, por que está entre ASPAS SIMPLES. E $b é NUMBER, pois está sendo atribuído diretamente sem uso de ASPAS. Esta é uma diferença de atribuição de variáveis. 

Estrutura condicional IF, ELSE IF, ELSE em PHP

Estas provavelmente serão as mais utilizadas por você. Um IF sempre compara pelo menos duas coisas. Vamos a sintaxe abaixo e alguns exemplos:

#sintaxe
$a = 8;
if($a == 8)
    echo "verdadeiro";
else
{
    echo "falso";
}
?>

Esta é a sintaxe mais simples do IF. Na leitura deste código temos:

  • $a recebe 8;
  • Se $a for igual a 8:
    • Então echo verdadeiro;
    • Se não echo falso;

Pode ver que não utilizamos abertura de chaves neste exemplo. Isto não está errado, quando a condição de comparação for executar apenas uma linha, não precisamos usar uma chave. Ou seja, se o IF for verdadeiro, e no verdadeiro será apenas um echo, então não precisamos usar as chaves. Na condição falsa, onde temos também apenas um echo, usamos as chaves, mas elas não são obrigatórias neste caso. Agora veja um exemplo abaixo:

$a = 9;
if($a != 10)
{
    echo "entrei no if";
    $a = 10;
}
?>

Este exemplo, onde temos duas linhas que serão executadas somente se $a for diferente de 10, então precisamos usar chaves, pois duas linhas vão ser executadas neste caso. 

ELSE IF: 

O else if é uma estrutura que vem abaixo de um para tentar outra condição, caso a primeira tenha falhado. Veja o exemplo:

$a = 10;
if($a == 8)
    echo "a é 8";
elseif($a == 10)
    echo "a é 10";
else
    echo "a nao é nem 8, nem 10";
?>

Como pode ver no exemplo acima, fizemos uma primeira comparação para saber se $a é igual a 8, se não for, vai fazer uma outra comparação, se $a é igual a 10, para só então negar as duas tentativas, caso o $a for diferente de 10 e de 8.

Comparação dupla:

Podemos também fazer uma comparação dupla no IF.

$a = 19;
$b = 15;
if(($a > 10) && ($b < 20))
   echo "verdadeiro";

#OUTRO EXEMPLO
$a = 19;
$b = 15;
if(($a > 10) || ($b < 10))
    echo "verdadeiro";
?>

Em ambos os exemplos a condição será verdadeira. No primeiro caso, usamos E, então todas as condições devem ser verdadeiras para que a condição geral seja verdadeira. Ou seja, $a é maior que 10 (verdadeiro) E $b é menor que 20 (verdadeiro)

No segundo exemplo, usamos OU, então, precisa-se que pelo menos uma das condições seja verdadeira para que a condição geral seja verdadeira. Ou seja, $a é maior que 10 (verdadeiro) OU $b é menor que 10 (falso, pois $b é igual a 15). Mesmo a segunda condição sendo falsa, a condição geral é satisfeita pois uma delas é verdadeira. 

Estrutura condicional SWITCH: 

O switch é um caso onde podemos usar diversas condições. Vamos primeiro mostrar sua sintaxe: 

$a = 10;

switch($a)
{
    case 10 :
        echo "é 10";
    break;
    case 20 :
        echo "é 20";
    break;
    case 30 :
        echo "é 3 0";
    break;
    default: "echo nenhum";
}
?>

O switch trabalha basicamente com várias opções de entrada. A sua sintaxe, descrita acima, faz exatamente o que o nome do comando diz, troque. Se o valor da variável estiver dentro de um dos CASES, o switch vai executar o código que estiver ali. Se não encontrar nenhum, ele vai tentar procurar pelo DEFAULT e executá-lo. 

Conclusão

Neste tópico vimos como usar os comandos de condição. Aprendemos usar um IF, ELSE IF, ELSE e SWITCH. Além de aprendermos sobre operadores lógicos e operações lógicas que podem ser feitas em condições. 

[CURSO]118[/CURSO]