A instrução for pode ser considerada a instrução mais básica na parte de controle de loop do PHP (e em muitas linguagens). As regras de execução e o uso básico da instrução for não serão discutidos aqui. do manual do PHP. Sua sintaxe é definida no manual do PHP da seguinte forma:
for (expr1; expr2; expr3)
instrução
Vamos falar sobre diversas variações úteis da instrução for.
1. Loop infinito
Em primeiro lugar, é o loop infinito (também chamado de “loop morto”) que todos conhecem. Como a expressão vazia null é sintaticamente válida, podemos deixar as três expressões da instrução for vazias, o que terá o efeito de executar continuamente instruções for aninhadas.
<?php
para (;;) {
//Coloque instruções que precisam ser executadas continuamente
}
?>
Embora algumas tarefas usem loops infinitos, a maioria das tarefas do programa, especialmente os campos que o PHP pode envolver, adicionarão algumas condições para encerrar o loop ao usar loops infinitos.
<?php
para (;;) {
//Se for 2199 DC, saia do loop if (date('Y') == '2199') {
quebrar;
}
}
?>
2. Use expressões vazias
A seguir, vamos falar sobre o uso da sintaxe nula na instrução de inicialização expr1. A função mais comum de deixar expr1 em branco é concluir um trabalho de inicialização mais complexo.
<?php
if (isset($i)) {
não definido($i);
if ((int) data('') <2008) {
$i = 0;
} outro {
$i = 1;
}
} outro {
$i =3;
}
para (;$i < 10;$i++) {
eco $i;
}
?>
Da mesma forma, a expressão de iteração expr3 também pode ser deixada em branco. Isso também pode ser usado para escrever iterações mais complexas, como chamar diferentes iterações de acordo com diferentes condições.
Deixar a instrução condicional expr2 na instrução for em branco é o loop infinito mencionado acima. É claro que você também pode adicionar algumas condições mais complexas para determinar quando sair do loop, o que não será repetido aqui.
3. Múltiplos loops
O uso de múltiplos loops para controlar múltiplas variáveis também é um recurso frequentemente ignorado na instrução for. Como no exemplo abaixo, loops duplos são geralmente usados em tarefas gerais, e loops de três ou mais são geralmente de pouca importância.
<?php
para ($i = 0, $j = 10;$i <= 10;$i++, $j--) {
echo "$i + $j = 10rn";
}
?>
O código acima produzirá:
0 + 10 = 10
1 + 9 = 10
2 + 8 = 10
3 + 7 = 10
4 + 6 = 10
5 + 5 = 10
6 + 4 = 10
7 + 3 = 10
8 + 2 = 10
9 + 1 = 10
10 + 0 = 10
4. Expressões mais complexas
Se as três expressões da instrução for forem escritas de forma mais complexa, elas poderão ser usadas para algoritmos de otimização. Você pode até usar uma instrução for sem corpo de loop para concluir algumas tarefas. Por exemplo, para calcular acumulação ou fatorial:
<?php
//Calcula o resultado cumulativo de 1-5, valor bin para $j
para ($i = 1,$j = 0; $i <= 5;$j += $i++);
echo $j;
//Calcula o resultado fatorial de 1-5, valor bin para $j
para ($i = 1,$j = 1; $i <= 5;$j *= $i++);
echo $j;
?>
PHP usa a sintaxe da linguagem C e também terá as características de C até certo ponto. Por exemplo, a poderosa instrução for loop é um exemplo típico.