Bardzo często zachodzi potrzeba wykonania jakiejś operacji na
wszystkich elementach tablicy. Sprawa jest prosta jeśli tablica
jest zwykłą tablicą z indeksami liczbowymi i znamy ilość tych
elementów:
Przykład 5.4. Przeglądanie tablic pętlą
<?php $tbl[] = 1; $tbl[] = 2; $tbl[] = 3; $tbl[] = 4; $tbl[] = 5;
for( $x = 0; $x < 5; $x++ ) { // Pętla wykona się 5 razy (0...4) echo $tbl[$x]; } ?>
|
Sprawa się trochę komplikuje jeśli nie znamy ilości elementów
tablicy. Wtedy z pomocą przychodzi funkcja count(
$nazwa_tablicy ). Zwraca ona ilość elementów w
tablicy podanej jako parametr.
Przykład 5.5. Pętla for i funkcja count
<?php $tbl[] = 1; $tbl[] = 2; $tbl[] = 3; $tbl[] = 4; $tbl[] = 5;
for( $x = 0, $cnt = count($tbl); $x < $cnt; $x++ ){
echo $tbl[$x]; } ?>
|
Jeszcze trudniej jest jeśli konieczne jest przejrzenie tablicy
asocjacyjnej, ale i to da się załatwić. W tym przypadku należy
skorzystać z funkcji list() i
each(). Nie będę omawiał ich działania -
jesli kogoś to interesuje, to odsyłam do manuala PHP. Przy
przechodzeniu przez tablice asocjacyjne trzeba wykorzystać pętlę
while.
Przykład 5.6. Przeglądanie tablic asocjacyjnych
<?php $tablica["imie"] = "Jan"; $tablica["nazwisko"] = "Kowalski"; $tablica["adres"] = "Polna 1";
while( list($klucz, $wartosc) = each($tablica) ) echo "$klucz => $wartosc<br>";
?>
|
Jak widać, w każdej iteracji pętli mamy dostępne 2 zmienne,
przyjmujące wartości kolejnych kluczy i wartości przypisanych tym
kluczom.