continue
(PHP 4, PHP 5, PHP 7, PHP 8)
continue
é usado em estruturas de repetição para
pular o restante da iteração atual do laço e continuar a execução
na validação da condição e depois no início da próxima iteração.
Note: No PHP, a instrução switch é considerada uma estrutura de repetição para os propósitos de
continue
.continue
se comporta comobreak
(quando nenhum argumento é passado), mas emitirá um aviso, pois é provável que seja um erro. Se umswitch
estiver dentro de um laço,continue 2
continuará na próxima iteração do laço externo.
continue
aceita um argumento numérico opcional
que informa quantos níveis de laços aninhados ele deve pular.
O valor padrão é 1
, pulando assim
para o final do laço atual.
<?php
$array = ['zero', 'um', 'dois', 'três', 'quatro', 'cinco', 'seis'];
foreach ($array as $chave => $valor) {
if (!($chave % 2)) { // pula membros com chaves pares
continue;
}
echo $valor . "\n";
}
?>
Os exemplos acima produzirão:
um três cinco
<?php
$i = 0;
while ($i++ < 5) {
echo "Externo\n";
while (1) {
echo "Meio\n";
while (1) {
echo "Interno\n";
continue 3;
}
echo "Isso nunca é exibido.\n";
}
echo "Nem isso.\n";
}
?>
Os exemplos acima produzirão:
Externo Meio Interno Externo Meio Interno Externo Meio Interno Externo Meio Interno Externo Meio Interno
Omitir o ponto e vírgula após continue
pode causar
confusão. Abaixo está um exemplo do que não se deve fazer.
<?php
for ($i = 0; $i < 5; ++$i) {
if ($i == 2)
continue
print "$i\n";
}
?>
O resultado esperado poderia ser:
0 1 3 4
Versão | Descrição |
---|---|
7.3.0 |
continue em um switch que está tentando agir como uma declaração break para o
switch gerará um E_WARNING .
|