Traversing Arrays in PHP

PHP udostępnia kilka sposobów na przemieszczanie się po tablicach używając zarówno funkcji iteracji tablic jak i konstrukcji językowych: array_walkarray_maparray_filterforeachlisteach, oraz for pętle. Demonstrujemy i opisujemy foreach i inne konstrukcje pętli na tej stronie. Funkcje iteracyjne omówimy na innej stronie.

foreach

Pętla PHP foreach zapewnia wygodny sposób iteracji po tablicach. Istnieją dwie formy: jedna używa zarówno klucza jak i wartości każdego wpisu do tablicy, podczas gdy druga używa tylko wartości. Najpierw zademonstrujemy formę key => value:

Ciało pętli wykorzystuje echo do wyświetlania po kolei klucza i wartości każdego elementu tablicy.

W tym przykładzie, foreach używa tylko wartości elementów tablicy:

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

Konstrukcja foreach może być użyta do modyfikacji wartości tablicy, którą przemierza, poprzez użycie znaku referencji (&):

list/each

Inny popularny sposób na przemierzanie tablic wykorzystuje pętlę while z konstrukcją językową list i funkcją each. Poniższy przykład osiąga taki sam rezultat jak pierwszy przykład foreach pokazany powyżej:

Podczas iteracji po tablicy, funkcja each jest używana do zwracania bieżącej pary klucz-wartość i posuwania wskaźnika tablicy do przodu. Funkcja list służy do przypisania klucza i wartości do zmiennych. Pętla while kończy się po osiągnięciu ostatniego elementu w tablicy. Funkcja reset jest wywoływana w celu przywrócenia wskaźnika tablicy do pierwszego elementu w tablicy.

Konstrukcja listeach może być użyta zarówno z kluczem jak i wartością, lub tylko z wartością. Poniższy przykład daje taki sam rezultat jak drugi przykład foreach pokazany powyżej:

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

for

Pętla for może być użyta do iteracji po tablicach indeksowanych numerycznie, jak zademonstrujemy tutaj:

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

W powyższym przykładzie użyto echo do wyświetlania bieżącej wartości w każdej iteracji pętli. Możesz również użyć pętli for do modyfikacji wartości, jak pokazuje poniższy przykład:

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

Funkcje iteracyjne tablic PHP

Dowiedz się więcej o przemierzaniu tablic w PHP za pomocą funkcji iteracyjnych: array_walkarray_map oraz array_filter.

Powrót do góry

Dodaj komentarz

Twój adres email nie zostanie opublikowany. Pola, których wypełnienie jest wymagane, są oznaczone symbolem *