Controlo do fluxo em PHP: Condições IF

A programação exige em muitas ocasiões a repetição de acções sucessivas ou a escolha de uma determinada sequência e não de outra dependendo das condições especificas da execução.

Como exemplo, podíamos fazer alusão a um script que execute uma sequência diferente em função do dia da semana no que nos encontramos.

Este tipo de acções podem ser levadas a cabo graças a um conjunto de instruções presentes na maioria das linguagens. Neste capítulo vamos descrever algumas delas propostas por PHP e que tem uma utilidade evidente.

Para evitar complicar o texto, vamos limitar-nos a introduzir as mais importantes deixando de lado outras que poderão ser facilmente assimiláveis a partir de exemplos práticos.

As condições if
Quando queremos que o programa, chegado um certo ponto, tome um caminho concreto em determinados casos e outro diferente se as condições de execução diferem, partimos do conjunto de instruções if, else e elseif. A estrutura de base para este tipo de instruções é a seguinte:

if (condição)
{
Instrução 1;
Instrução 2;

}
else
{
Instrução A;
Instrução B;

}

Chegados a este ponto, o programa verificará o cumprimento ou não da condição. Se a condição é certa as instruções 1 e 2 serão executadas. Do contrario (else), as instruções A y B serão levadas a cabo.

Esta estrutura de base pode complicar-se um pouco mais se tivermos em conta que nem tudo é necessariamente preto no brano e que existem muita possibilidades. É por isso que outras condições se podem questionar dentro de uma condição principal. Falamos pois de condições aninhadas que teriam uma estrutura do seguinte tipo:

if (condição1)
{
Instrução 1;
Instrução 2;

}
else
{
if (condição2)
{
Instrução A;
Instrução B;

}
else
{
Instrução X

}
}

Deste modo, poderíamos introduzir o número de condições que quisermos dentro de uma condição principal.

É de grande ajuda a instrução elseif que nos permite numa só linha introduzir uma condição adicional. Este tipo de instrução simplifica ligeiramente a sintaxe que acabámos de ver.

if (condição1)
{
Instrução 1;
Instrução 2;

}
elseif (condição2)
{
Instrução A;
Instrução B;

}
else
{
Instrução X

}

O uso desta ferramenta é claro com um pouco de prática. Utilizemos um exemplo simples de utilização de condições. O seguinte programa permitiria detectar a língua empregue pelo navegador e visualizar uma mensagem nessa língua.

<HTML>
<HEAD>
<TITLE>Detector de Lingua</TITLE>
</HEAD>
<BODY>
<?
//Antes de nada introduzimos mensagens em forma de variáveis
$portugues=”Ola”;
$ingles=”Hello”;
$frances=”Bonjour”;

//Agora lemos do navegador qual é a sua língua oficial
$idioma=substr($HTTP_ACCEPT_LANGUAGE,0,2);

//Formulamos as possibilidades que se podem dar
if ($idioma == “pt”)
{echo “$portugues”;}
elseif ($idioma==”fr”)
{echo “$frances”;}
else
{echo “$ingles”;}
?>
</BODY>
</HTML>

Para poder ver o funcionamento deste script é necessário mudar o idioma preferido o qual pode ser realizado a partir do menu de opções do navegador.

Para ler a língua aceite pelo navegador o que fazemos é definir uma variável ($idioma) e, mediante a função subst, recolhemos as duas primeiras letras do código correspondente ao idioma aceitado pelo navegador ($HTTP_ACCEPT_LANGUAGE).

A terceira parte do script encarrega-se de ver se o navegador está em português (pt), francês (fr) ou em qualquer outro idioma que não seja nenhum destes dois e de imprimir a mensagem que proceda em cada caso.

Temos de destacar que, quando se trata de comparar variáveis, pomos um duplo igual “==” em lugar de um simples “=”. Este último fica reservado exclusivamente para atribuir valores às variáveis.

Fonte: http://www.criarweb.com/artigos/89.php

Deixe um comentário