Tal como em qualquer outra linguagem de programação, a possibilidade de repetir um pedaço de código n vezes é muito importante. É para isso que usamos os loops, e o PHP tem à nossa disposição 4 tipos de loops diferentes. Vamos agora passar por cada um deles, com uma pequena explicação de cada um em exemplos.

O Loop While

O loop while é provavelmente o mais simples de todos. Simplesmente repete um pedaço de código desde que a condição dentro do mesmo seja true. Um exemplo desta situação será esta:

 

Experimentem este exemplo. Irá contar até 4, já que continua até que a variável $i deixe de ser menor que 5. De cada vez que há uma iteração pelo loop, adicionamos o valor 1 à variável $i, assim como retornamos o valor actual. Seja o que for que colocarmos dentro dos parentesis do loop while, este tem de conseguir avaliar a condição num valor booleano, true ou false.

Loop Do-While

Este loop funciona quase da mesma maneira que o loop while, mas com uma importante diferença: com o loop while, a condição é verificada antes de entrarmos no loop; com o loop do-while a condição é verificada no final de cada iteração. Isto significa que com o loop do-while, garantimos pelo menos uma iteração; com o loop while, o código dentro do loop pode nunca vir a ser alcançado se a condição nunca for avaliada como true. Aqui está um exemplo deste comportamento:

 

Com o loop normal while, não iriamos ter qualquer retorno, pois a varuiável $i é 0, e por isso nunca é menor que 0 em nenhuma altura. No entanto, visto que estamos perante um loop do-while, temos uma iteração sempre. No final o PHP verifica que a condição não é avaliada a true, e o loop termina.

Loop For

O loop for é um dos mais comuns em PHP, que podem reconhecer de outras linguagens de programação. No início poderá parecer um pouco mais complicado que o loop while, mas com um pouco de prática verão que não é tão complicado como parece. Aqui está um exemplo do loop for:

 

O resultado é precisamente o mesmo do loop while, mas como podem ver é feito com menos linhas de código. A variável $i é inicializada, testada e incrementada na mesma linha: primeiro é declarada e atribuido um valor, de seguida a condição de avaliação e por último incrementamos (ou decrementamos, que também é possível) a variável. Cada uma das partes é separada com uma vírgula. O loop for é compacto e bom para todas as situações que queremos saber a quantidade de iterações.

Loop ForEach

O loop foreach em PHP serve para iterações num array. Na verdade só funciona mesmo com arrays, e o PHP irá devolver um erro se o usarmos com uma variável que não esteja inicializada, ou uma variável que não contenha um array. O loop foreach tem duas formas diferentes. Aqui fica o primeiro exemplo. Como ainda não vos falei nos arrays, fiquem com a ideia de que são uma lista de itens. Mais à frente iremos ficar a saber mais sobre arrays.

 

O bom do loop foreach é que está desenhado para trabalhar somente com arrays, o que torna todo o processo mais simples. Em cada iteração, é atribuido o valor da posição actual do array à variável $animal, dando-nos um acesso fácil ao mesmo. Este pequeno código vai simplesmente retornar uma lista de itens (neste caso animais) existentes no array.

Nesta versão do loop foreach apenas temos acesso ao valor do loop. No entanto, cada item no array consiste numa chave e num valor. No nosso exemplo deixamos o PHP atribuir chaves automaticamente mas não definí-las explicitamente. Esta parte será explicada em detalhe mais à frente. Caso também precisem aceder à chave do item actual na iteração, usem um segundo loop foreach, desta forma:

 

Como podem ver até é bem simples 😉

Artigo anterior do tutorial PHP:

Condição Switch em PHP

Artigo seguinte do tutorial PHP:

Incluir ficheiros em PHP

Tiago Ramalho

Tiago Ramalho é um profissional de Informática interessado em Internet, Programação .NET e PHP e blogging. Nos tempos livres escreve nos interessespessoais.com sobre Jardim, Saúde, Sistemas, utilitários e outros temas relacionados com informática.

More Posts - Website - Twitter - Pinterest - Google Plus