Estruturas de controle no PHP: if, else, elseif e switch

Estruturas de controle no PHP: if, else, elseif e switch
Figura 1 - Estruturas de controle no PHP: if, else, elseif e switch
Curtiu? Compartilhe!
  •  
  •  
  •  
  •  
  •  
  •  

Na maioria da vezes precisamos desviar o fluxo de nosso código PHP dependendo do resultado que esperamos ter em dado momento, e para isso existem diferentes estrutura de controle que todas elas serão abordadas aqui.

Declarando uma condição if

Executa todo o bloco de código linha a linha somente se esta condição for verdadeira, exemplo:

1
2
3
4
5
6
7
8
9
10
<!--?php 
 
$num1 = 2;
$num2 = 1;
if ($num1 --> $num2) {
  echo 'Está condição é verdadeira <br>';
  echo 'e o número ' .$num1. ' é maior que 1';
}
 
?&gt;

Declarando uma condição if…else

Executa todo o bloco de código linha a linha somente se a primeira condição if for verdadeira caso contrário executa imediatamente o bloco else exemplo:

1
2
3
4
5
6
7
8
9
10
11
12
<?php
 
$num1 = 2;
$num2 = 2;
if ($num1 > $num2) {
  echo 'Está condição é verdadeira <br>';
  echo 'e o número ' .$num1. ' é maior que 1';
}else{
  echo $num1 . ' não é maior que ' .$num2. ' elas são iguais portanto isso serve de alerta!';
}
 
?>

Operardor Ternário

Existe uma alternativa ao uso do if…else… que é o uso do operador ternário, muitos criticam o seu uso alegando que é um código ilegível outros assim como eu recomendo o seu uso contrariando tudo o que os críticos alegam, mas discussão a parte e vejamos seu uso.

<?php
(expr1) ? (expr2) : (expr3)
?>

Com base na expressão do exemplo anterior aplicando o uso desse operador temos:

1
2
3
4
5
6
7
<?php
 
$num1 = 2;
$num2 = 2;
echo ($num1 > $num2) ? 'Está condição é verdadeira <br> e o número ' .$num1. ' é maior que 1' : $num1 . ' não é maior que ' .$num2. ' elas são iguais portanto isso serve de alerta!';
 
?>

Verificando múltiplas condições com o uso de if…elseif…else…

Quando desejamos fazer uso de múltiplas condições podemos recorrer a este tipo de estrutura que verifica condição por condição até que encontre uma condição verdadeira.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
<?php
 
$num1 = 2;
$num2 = 3;
if ($num1 > $num2) {
  echo 'Está condição é verdadeira <br>';
  echo 'e o número ' .$num1. ' é maior que ' .$num2;
}elseif($num1 == $num2){
  echo 'o número ' .$num1. ' é igual a ' .$num2;
}elseif($num1 < $num2){
  echo 'o número ' .$num1. ' é menor ' .$num2;
}else{
  echo 'todas as condições anteriores são falsas por isso está vendo essa mensagem';
}
 
?>

Verificando múltiplas condições com o uso de switch

Esta condição é uma alternativa para a condição anterior onde avaliará condição por condição até que seja encontrada uma condição que seja verdadeira e deixara de avaliar as condições seguintes por causa do comando break.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
<?php
 
$num1 = 2;
 
switch ($num1) {
  case 1:
    echo 'Está condição é verdadeira </ br>';
    echo 'e o número ' .$num1. ' é igual a 1';
  break;
  case 2:
    echo 'o número ' .$num1. ' é igual a 2';
  break;
  case 3:
    echo 'o número ' .$num1. ' é igual a 3';
  break;
  default:
  echo 'todas as condições anteriores são falsas por isso está vendo essa mensagem';
}
 
?>

Faça outros testes mudando os valores das variável para vê como o programa se comporta, por exemplo posso omitir o comando break da linha 15, alterar o valor para 2 da linha 13 para que o interpretador continue avaliando as condições seguintes.


Escrito por

Formado em Ciência da Computação pela Universidade UNIP-SP é Analista de Sistemas, Desenvolvedor Web independente e criador da EduSites quando não está pesquisando novas tecnologias está curtindo sua bebê Larissa e jogando Forza 3 online.


Seja o primeiro a comentar

Deixe seu comentário

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *

*

*

Certificação W3C

Desenvolver Sites certificado pelo consorcio W3C é garantia que seu site segue rigorosos padrões de desenvolvimento Web.

Formas de pagamentos

Aceito os principais cartões de crédito.

Siga-me nas Redes Sociais