Busca avançada Meus favoritos Como criar site grátis em PHP, HTML, CSS, JS ...
Postes RECENTES
Neste artigo de hoje vamos aprender um pouco sobre as estruturas condicionais em php. Estrutura condicional é um bloco, um trecho de código que desvia a execução normal do programa para uma parte especifica deste programa. Esse desvio da execução não é feito por acaso, ele deve atender certas condições lógicas.
A estrutura condicional mais utilizada é o if (se em inglês). O if em conjunto com o else, e com o elseif nos dá o controle total sobre as condições que desejarmos testar.
Imagine a seguinte situação: Se a idade for maior que 18 exibe imagem x, se NÃO for exibe imagem y.
Podemos representar, no código, essa situação da seguinte forma: <?php
$idade = 19;
if($idade > 18)
{
echo '<img src="imagemX.jpg" alt="" />';
}
else
{
echo '<img src="imagemY.jpg" alt="" />';
}
?>
No script acima temos a variável $idade com valor igual a 19, como nos temos duas imagens para ser exibida, uma para os casos em que a pessoa tem mais de 18 anos, imagem X, e outra para pessoas com menos ou igual a 18 anos, imagem Y.
Para nós não é difícil percebermos que a imagem que será exibida, no exemplo acima, é a imagem X, isso porque nós pensamos. O php não pensa, mas nós, seres pensantes, o instruímos a fazer os teste lógico necessário: se (if) a idade for maior que 18 exibe a imagem X, caso contrário (else) exibe a imagem Y.
Até aqui aprendemos a utilizar o if e o else, porque tinhas que fazer apenas um teste, saber se a idade era maior que 18.
Mas se quisermos exibir uma imagem se a idade for menor ou igual a 10, outra se a idade for maior que 10 e menor ou igual a 18 e outra imagem se a idade for maior que 18 vamos precisar utilizar o elseif, que é a união do if e do else, como vocês, brilhantes leitores, já devem ter percebido.
Como um exemplo vale mais que mil palavras, vamos resolver esse probleminha com um exemplo: <?php
$idade = 12;
if($idade <= 10){
echo 'menor ou igua a 10';
}
elseif($idade >10 && $idade <= 18 )
{
echo 'maior que 10 e menor ou igual a 18';
}
else
{
echo 'maior que 18';
}
?>
Primeiro testamos se a idade é menor ou igual a 10 "if($idade <= 10", depois testamos se a idade é maior que 10 e menor ou igual 18 "elseif($idade > 10 && $idade <=18". Se não atender nenhuma das condições, a idade só poderá ser maior que 18.
Para sabermos se a idade era maior que 10 e menor ou igual a 18 utilizamos dois testes no mesmo elseif com o operador &&, que significa 'E'. Podemos também usar o AND no lugar de &&. Se nosso teste fosse idade x ou idade x, usaríamos || ou então OR.
Se quisermos testar uma mesma variável varias vezes é mais aconselhável usarmos um switch
Num sistema de pedidos separamos os pedidos por status, cada numero do status corresponde a uma situação ou estado do pedido. Os status vão de 1 a 5, veja:
1 = aguardando pagamento
2 = pago
3 = enviado
4 = concluído
5 = cancelado
Para imprimir o nome dos status usando o switch fazemos assim: <?php
$status = 5;
switch ($status) {
case 1 :
echo 'aguardando pagamento';
break;
case 2 :
echo 'pago';
break;
case 3 :
echo 'enviado';
break;
case 4 :
echo 'concluído';
break;
case 5 :
echo 'cancelado';
break;
default :
echo 'status inválido';
}
?>
A estrutura condicional switch é simples de usar, vamos analisar o exemplo acima: swicht($status), indica qual variável iremos testar, { abre o bloco de comando.
case 1 : = Se a variavel testada, $status, for igual a 1 escreve 'aguardando pagamento' e break interrompe a execução do bloco de comando. A mesma lógica se repete para os demais status. Se ao final nenhum status for encontrado exibe uma mensagem padrão "default", neste nosso caso 'status inválido'. E } fecha o bloco de comando.
DEIXE SEU COMENTÁRIO