Estruturas de Controle
As estruturas que veremos a seguir são comuns para as linguagens de programação imperativas, bastando, portanto, descrever a sintaxe de cada uma delas, resumindo o funcionamento.
Um bloco consiste de vários comandos agrupados com o objetivo de relacioná-los com determinado comando ou função. Em comandos como if, for, while, switch e em declarações de funções blocos podem ser utilizados para permitir que um comando faça parte do contexto desejado. Blocos em PHP são delimitados pelos caracteres “{” e “}”. A utilização dos delimitadores de bloco em uma parte qualquer do código não relacionada com os comandos citados ou funções não produzirá efeito algum, e será tratada normalmente pelo interpretador.
Exemplo:
if ($x == $y) comando1; comando2;
Para que comando2 esteja relacionado ao if é preciso utilizar um bloco:
if ($x == $y){ comando1; comando2;
}
Também chamados de condicionais, os comandos de seleção permitem executar comandos ou blocos de comandos com base em testes feitos durante a execução.
if
O mais trivial dos comandos condicionais é o if. Ele testa a condição e executa o comando indicado se o resultado for true (valor diferente de zero). Ele possui duas sintaxes:
if (expressão) comando;
if (expressão): comando;
. . .
chaves.
comando; endif;
Para incluir mais de um comando no if da primeira sintaxe, é preciso utilizar um bloco, demarcado por
O else é um complemento opcional para o if. Se utilizado, o comando será executado se a expressão retornar o valor false (zero). Suas duas sintaxes são:
if (expressão) comando;
else
comando;
if (expressão): comando;
. . .
comando; else
comando;
. . .
comando; endif;
A seguir, temos um exemplo do comando if utilizado com else: if ($a > $b)
$maior = $a; else
$maior = $b;
O exemplo acima coloca em $maior o maior valor entre $a e $b
Em determinadas situações é necessário fazer mais de um teste, e executar condicionalmente diversos comandos ou blocos de comandos. Para facilitar o entendimento de uma estrutura do tipo:
if (expressao1) comando1;
else
if (expressao2) comando2;
else
if (expressao3) comando3;
else
comando4;
foi criado o comando, também opcional elseif. Ele tem a mesma função de um else e um if usados sequencialmente, como no exemplo acima. Num mesmo if podem ser utilizados diversos elseif’s, ficando essa utilização a critério do programador, que deve zelar pela legibilidade de seu script.
O comando elseif também pode ser utilizado com dois tipos de sintaxe. Em resumo, a sintaxe geral do comando if fica das seguintes maneiras:
if (expressao1) comando;
[ elseif (expressao2) comando; ]
[ else
comando; ]
if (expressao1) : comando;
. . .
comando;
[ elseif (expressao2) comando;
. . .
comando; ] [ else
comando;
. . .
comando; ] endif;
switch
O comando switch atua de maneira semelhante a uma série de comandos if na mesma expressão. Frequentemente o programador pode querer comparar uma variável com diversos valores, e executar um código diferente a depender de qual valor é igual ao da variável. Quando isso for necessário, deve-se usar o comando switch. O exemplo seguinte mostra dois trechos de código que fazem a mesma coisa, sendo que o primeiro utiliza uma série de if’s e o segundo utiliza switch
Comentários
Postar um comentário