Ato 3 - Estrutura de Controle e Funções

Artigo de nível básico para aqueles que estão iniciando no PHP, talvez um pouco resumido, mas acredito que seja elucidativo.

[ Hits: 24.593 ]

Por: woshington rodrigues em 13/08/2010


Estruturas de Controle - Condicionais



IF

O if é uma estrutura condicional que retorna um valor booleano de acordo com o resultado da condicional, ou é true ou é false. Em um determinado momento em sua aplicação você certamente irá precisar de uma estrutura que tome uma decisão de acordo com uma escolha do usuário ou de acordo com um valor informado, é uma ocorrência comum em qualquer programa.

Ex.:

<?php

$numero = 10;
if ( $numero = = 10 ) {
   echo 'verdadeiro'; /* se o retorno for true o código para aqui, pois o return encerra a estrutura que o contém. Visto que $numero é igual a 10 o retorno será verdadeiro */
} else {
   echo 'false'; /* caso contrário se o valor não for igual a 10 a condicional irá retornar false */
}

?>

Há também o uso do elseif, porém este deve estabelecer uma condicional assim como o if, note que o else apenas nega o que foi passado anteriormente. Veja como funciona o elseif:

<?php

$numero = 10;
if ( $numero > 10 ) {
   echo 'e maior que 10';    
} elseif ($numero = = 10) { //aqui temos outra condicional
   echo 'é igual a 10';
} else {
   echo 'e menor que 10'; //note que não há uma condicional no else
}

?>

Àqueles que são acostumados ao ASP, Delphi, Pascal e similares talvez prefiram uma sintaxe alternativa do if, que aos olhos de alguns parece mais organizada, eu particularmente prefiro o modelo clássico.

Sintaxe alternativa:

<?php

$y = 1;
if(isset($y)):
   echo $y;
else:
   echo 'não existe';
endif;

?>

Switch

Em algumas ocasiões é preciso testar várias condicionais, para isso podem ser usados diversos if aninhados sistematicamente, no entanto este sistema acaba por tornar o código um tanto quanto confuso e de difícil leitura. Uma alternativa mais elegante e deveras interessante para o proposto seria o uso da estrutura switch, que irá executar um determinado comando vinculado à condicional que retornar true.

<?php

$mes='março';
switch ($mes) {
   case 'janeiro':
      print 'mes de janeiro';
      break; /*os breaks são essenciais se forem retirados o switch irá executar todos os comandos imediatamente abaixo de uma condicional verdadeira*/
   case 'fevereiro':
      print 'mes de fevereiro';
      break;
   case 'março':
      print 'mes de março';
      break;
   default; /*caso todas as condicionais retornem false o valor default será executado*/
   case 'abril':
      print 'mes de abril';
      break;

}

?>

    Próxima página

Páginas do artigo
   1. Estruturas de Controle - Condicionais
   2. Estruturas de Controle - Iterações
   3. Estruturas de Controle - Comandos básicos de sequenciação
   4. Funções
Outros artigos deste autor

Snort - Gerenciamento de redes

PHP e suas variáveis (básico)

Nessus Portscanner

Ato 2 - comandos de saída, constantes e operadores em PHP (básico)

Leitura recomendada

Construindo um ToolBar com botões no PHP-GTK

Instalando Servidor LAMP no Ubuntu e Derivadas

Sistema de Gerenciamento de Conteúdo

PHP e suas variáveis (básico)

If inline para PHP

  
Comentários
[1] Comentário enviado por everton_fuzz em 13/08/2010 - 13:07h

só faltou o operador ternário.

Se(<condição>) ? <instruções para verdadeiro> : <instruções para falso>;

de resto esta ótimo!. parabens!

[2] Comentário enviado por wos- em 13/08/2010 - 13:42h

valeu irmão,
eu pensei em colocá-lo, mas é que eu já tinha falado sobre ele no artigo anterior.

[3] Comentário enviado por metalpunkpointer em 18/08/2010 - 11:49h

olá wos, fica um adendo que a sintaxe alternativa tbm se aplica aos laços...

while(condicao):
instruções;
endwhile;

[4] Comentário enviado por walkerjosh em 20/08/2010 - 23:06h

Amigo WOS, ficou bacana sua explicação! Poste mais coisas de PHP pra gente! Valeu!

[5] Comentário enviado por marcelo linus em 22/08/2010 - 00:35h

manero msm, vlw, coloca mais coisa ai pra gente,!!


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts