Condicionais
Condicionais são usadas para executar um bloco de script sempre que determinada condição seja satisfeita. Por exemplo: uma condição pode estabelecer que uma data seja posterior a 1 de janeiro de 2012 ou que uma variável seja maior do que 7.If...
A primeira condicional que estudaremos é o if cuja sintaxe é mostrada a seguir:if (condition) { Comandos PHP }
<html> <head> <title>Loops </title> </head> <body> <?php $x = 2; if ($x > 1) { echo "<p>A variável $x é maior que 1 </p>"; } ?> </body> </html>
if ... else ...
Vejamos agora a condicional else cuja sintaxe é mostrada a seguir:if (condição) { comandos PHP } else { Comandos PHP }
Na Lição 4 mostramos como encontrar o número representativo do mês. No exemplo a seguir usaremos este número em uma condicional if else para encontrar em qual das estações do ano estamos:
<html> <head> <title>Condicionais</title> </head> <body> <?php if (date ("m") == 3) { echo "<p>Estamos no outono!</p> "; } else { echo "<p>Eu não sei em que estação estamos!</p> "; } ?> </body> </html>
Contudo, existem várias maneiras de aperfeiçoar a condicional tornando-a mais precisa. Observe a seguir alguns operadores de comparação que podemos usar na condicional mostrada:
== Igual
< Menor que
> Maior que
<= Menor ou igual a
>= Maior ou igual a
!= Diferente
Existem também operadores lógicos:
&& e
|| ou
! não
Operadores se destinam a criar condicionais mais precisas e com seu uso podemos melhorar o exemplo mostrado anteriormente fazendo com que o retorno do script seja a estação primavera em todos os meses que ela ocorre e não somente em março:
<html> <head> <title>Condicionais</title> </head> <body> <?php if (date("m") >= 3 && date("m") <= 5) { echo "<p> Estamos no outono!</p> "; } else { echo "<p> A estação atual é primavera, verão ou inverno!</p> "; } ?> </body> </html>
date("m") >= 3 && date("m") <= 5
Se o número que representa o mês for maior ou igual a 3 e menor ou igual a 5
Contudo nosso exemplo só funciona para os meses de março, abril e maio, Os demais meses não são contemplados pela condicional. Assim, vamos aperfeiçoá-lo mais:
if ... elseIf ... else...
Usando elseif podemos expandir a condicional e fazer com que nosso script funcione para todos os meses do ano:
<html> <head> <title>Condicionais</title> </head> <body> <?php if (date("m") >= 3 && date("m") <= 5) { echo "<p>Estamos no outono!</p>"; } elseif (date("m") >= 6 && date("m") <= 8) { echo "<p>Estamos no inverno!</p>"; } elseif (date("m") >= 9 && date("m") <= 11) { echo "<p>Estamos na primavera!</p>"; } else { echo "<p>Estamos no verão!</p>"; } ?> </body> </html>
Escrever condicionais é uma questão de lógica e método. O exemplo mostrado é bem esclarecedor, porém o uso de condicionais pode tornar-se bem mais complexo.
switch ... case
Outra maneira de se escrever condicionais é com uso do método switch:switch (expressão) { case 1: comandos PHP break; case 2: comandos PHP break; default: comandos PHP break; }
Na lição 4 nós vimos que a função date("w") retorna um número representando dia da semana. Vamos mostrar um exemplo para escrever o nome do dia da semana em lugar do número que o representa:
<html> <head> <title>Condicionais</title> </head> <body> <?php switch(date("w")) { case 1: echo "Hoje é segunda-feira"; break; case 2: echo "Hoje é terça-feira"; break; case 3: echo "Hoje é quarta-feira"; break; case 4: echo "Hoje é quinta-feira"; break; case 5: echo "Hoje é sexta-feira"; break; case 6: echo "Hoje é sábado"; break; default: echo "Hoje é domingo"; break; } ?> </body> </html>
Em geral switch é uma boa alternativa para a condicional if else. Qual delas usar em uma determinada situação depende somente de você. Use aquela que você considera mais fácil e lhe pareça mais lógica. Criar scripts lógicos e claros pode se constituir em um grande desafio para o desenvolvedor.
Nenhum comentário:
Postar um comentário