Traversing Arrays em PHP

PHP fornece várias formas de atravessar arrays usando tanto funções de iteração de array como construções de linguagem: array_walkarray_maparray_filterforeachlisteach, e for loops. Demonstramos e descrevemos foreach e outras construções de looping nesta página. Cobrimos as funções de iteração noutra página.

para cada

PHP’s foreach loop fornece uma forma conveniente de iterar sobre arrays. Existem duas formas: uma utiliza tanto a chave como o valor de cada entrada de matriz, enquanto a outra utiliza apenas o valor. Primeiro demonstramos o key => value forma:

O corpo do laço usa echo para mostrar a chave e o valor de cada elemento do array por sua vez.

Neste exemplo, foreach utiliza apenas o valor dos elementos da matriz:

$pets = ;foreach ($pets as $val) { echo "$val \n";}/*Morie Miki Halo Winnie */

O foreach construir pode ser usado para modificar os valores do array que atravessa usando o sinal de referência (&):

list/each

Outra forma comum de atravessar arrays usa uma função while loop with the list language build and the each function. O exemplo seguinte atinge o mesmo resultado que o primeiro foreach exemplo mostrado acima:

Como se itera sobre a matriz, a função each é utilizada para retornar o par de valores chave actual e avançar o ponteiro da matriz. A função list é utilizada para atribuir a chave e o valor às variáveis. A função while termina quando o último elemento da matriz é atingido. A função reset é invocada para restaurar o ponteiro do array para o primeiro elemento do array.

O listeach pode ser utilizado tanto com chave como com valor, ou apenas com valor. O exemplo seguinte produz o mesmo resultado que o segundo foreach exemplo mostrado acima:

$pets = ;reset($pets);while ( list(, $val) = each($pets) ) { echo "$val \n";}/*Morie Miki Halo Winnie*/

for

A for loop pode ser usado para iterar sobre arrays indexados numericamente, como demonstramos aqui:

$ar = ;for ($i=0, $len=count($ar); $i<$len; $i++) { echo "$ar \n";}/*Rudi Morie Halo Miki */

O exemplo acima usado echo para exibir o valor actual em cada iteração do laço. Também pode usar um for loop para modificar os valores, como o seguinte demonstra:

$ar = ;for ($i=0, $len=count($ar); $i<$len; $i++) { $ar *= 2;}print_r($ar);/* Array( => 2 => 4 => 6 => 8) */

PHP Array Iteration Functions

P>Descobrir mais sobre atravessar arrays em PHP usando as funções de interação: array_walk, array_map, e array_filter.

Voltar para o topo

Deixe uma resposta

O seu endereço de email não será publicado. Campos obrigatórios marcados com *