• 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.


Deixa sua Opinião

© Fokusweb - Todos os direitos reservados
Av. 14, nº 498 - S. Nova Vila - Goiânia - Goiás - Brasil
+55 (62) 3661-8688
IR AO TOPO