Tutorial 2 - If's e ciclosOs if's e os ciclos são das funções mais importantes e mais usadas no php, são uma ferramenta essencial para a maioria das linguagens de programação.
if: Retorna verdadeiro ou falso sobre uma operação lógica dentro do mesmo, caso seja verdadeiro irá executar o código, caso contrário não o executa e procura um
else ou
elseif.
Um
elseif não é mais que um
if depois de um
else.
<?php
if($lang = "Portuguese") {
echo "Bem-vindo";
}
elseif($lang = "Spanish") {
echo "Bienvindo";
}
else {
echo "Welcome";
}
?>
Poderá também usar para por exemplo dizer Bom dia, boa tarde e boa noite
<?php
$hora = date("G");
if(hora >= 4 && $hora < 12) {
echo "Bom dia";
}
elseif($hora >=12 && $hora < 20) {
echo "Boa tarde";
}
else { // Todas as outras horas, ou seja, das 20 as 4 da manha
echo "Boa noite";
}
?>
Atenção: Quando é executado um if, os elseif's ou else seguintes já não são executados.
Poderá optimizar o código se souber que todos os casos são 100% diferentes como no caso anterior (só 1 poderia estar correcto), colocando as condições por ordem de maior uso, assim não precisa de estar sempre a verificar em todos.
<?php
if(!$a == "Portuguese") { // Podera usar o [b]![/b] para negar algo, assim se ($a == "Portuguese") for verdadeiro, ele devolve falso e vai para o else, o "==" e' para comparacao entre 2 valores, atencao que se colocar apenas "=" ira' atribuir o valor a variavel e nao compara-lo, pelo que sera sempre verdadeiro.
echo "Not Portuguese";
}
else {
echo "Portuguese";
}
?>
Quando existe muitas condições e nenhuma é certa, podemos usar o
switch<?php
$day = date("D");
switch($day) {
case "Mon":
echo "Segunda-Feira";
break; //Obrigatorio caso no fim dos cases
case "Tue":
echo "Terca-Feira";
break;
case "Wed";
echo "Quarta-Feira";
break;
case "Thu":
echo "Quinta-Feira";
break;
case "Fri":
echo "Sexta-Feira";
break;
case "Sat":
echo "Sabado";
break;
case "Sun":
echo "Domingo";
break;
}
?>
Como pode ver neste exemplo é muito fácil adicionar mais opções, e como só pode ser corrida uma, o switch salta logo para o "case" certo sem passar pelo resto, pelo que está optimizado.
Ciclos: Quando é preciso fazer a mesma acção várias vezes, como por exemplo uma listagem, os ciclos são imprescindíveis.
Vamos começar pelo
while e pelo
for que são idênticos, pelo que vamos fazer um caso em que o funcionamento é igual.
<?php
$a = 1;
while($a <= 10) { // Vamos fazer uma contagem ate 10
echo $a;
$a++;
}
// Agora igual mas usando o for
for($a = 1; $a <= 10; $a++) { // No for, tem que haver sempre: (declaracao das variaveis ; caso de paragem ; incrementador que acontece no fim), em caso de haver varios, serao separados la dentro por virgulas, no entanto tudo pode estar vazio, sendo obrigatorio as 2 virgulas.
echo $a;
}
?>