-
0
-
Anteriormente vimos como criar uma estrutura condicional no PHP, o famoso IF e ELSE.
Em alguns casos essa estrutura pode ser muito útil. Mas em alguns não.
E quando precisarmos de fazer várias comparações para obter um resultado? Não é muito elegante você ter vários IFS uma abaixo do outro. Então para isso , utilizamos outra estrutura condicional que é o Switch/case.
O seu uso é similar ao IF. Dependendo da nossa expressão lógica ele vai executar um bloco de informação. Vamos a estrutura padrão do switch/case.
switch([CONDICAO])
{
case [CONDICAO 1]:
{
//executa esse bloco
break;
}
case [CONDICAO 2]:
{
//executa esse bloco
break;
}
default: echo ‘não foi encontrada nenhuma comparação válida!’;
}
Entendendo a estrutura ficaria assim:
switch ([CONDICAO]) // escolha de uma condição
case [CONDICAO 1]: // Caso a condição for a [CONDICAO 1] entrará no bloco de execução dele
break// temos que colocar o break para indicar que ali acaba o bloco de execução. Se não colocarmos o break o fluxo de execução passaria para o próximo CASE, ou o próximo bloco a ser executado.
default// nossa medida de segurança. Caso nenhuma das condições sejam satisfeitas o default ou ação padrão é acionado.
Então vamos a nosso exemplo prático com if/else e com switch/case. Suponhamos que temos vários nomes, mas queremos executar apenas o bloco cujo tenha o nome Rafael.
<br /><br /> <div id="_mcePaste"><?php<br /> <br /> $nome= "Rafael";<br /> if($nome=="Augusto")<br /> {<br /> //bloco a ser executado se o nome for Augusto<br /> echo 'Seu nome é Augusto';<br /> }<br /> else if($nome == "Adriano")<br /> {<br /> //bloco a ser executado se o nome for Adriano<br /> echo 'Seu nome é Adriano';<br /> <br /> }<br /> else if($nome=='Rafael')<br /> {<br /> //bloco a ser executado se o nome for Rafael<br /> echo 'Seu nome é Rafael';<br /> }<br /> else<br /> {<br /> // caso o nome não seja Rafael, nem Adriano, nem Augusto<br /> echo 'Seu nome não foi encontrado';<br /> }<br /> <br /> /* Agora vamos ver essa mesma estrutura usando switch/case */ <br /> <br /> switch($nome)// escolha o nome<br /> {<br /> // caso o nome for adriano<br /> case 'Adriano':<br /> {<br /> echo 'Adriano';<br /> break;// break para não ir para o proximo bloco.<br /> }<br /> <br /> // caso o nome for Gustavo<br /> case 'Gustavo':<br /> {<br /> echo 'Gustavo';<br /> break;// break para não ir para o proximo bloco.<br /> }<br /> <br /> // caso o nome for Rafael<br /> case 'Rafael':<br /> {<br /> echo 'Adriano';<br /> break;// break para não ir para o proximo bloco.<br /> }<br /> <br /> default: echo 'Nome não encontado!!'; // ação padrão se o nome não for encontrado<br /> }<br /> ?></div>Essa é uma maneira mais simples e elegante de se escrever uma estrutura condicional. Até o próximo post.



