PHP | Tablice · Technik informatyk egzamin zawodowy

Programowanie / PHP

PHP | Tablice

Tablice to jedno z najważniejszych narzędzi w PHP, umożliwiające przechowywanie wielu wartości w jednej zmiennej. Wyróżniamy tablice jednowymiarowe, asocjacyjne oraz wielowymiarowe.

 

Tworzenie tablicy jednowymiarowej

Tablicę można zadeklarować na kilka sposobów:

// Pusta tablica
$tablica = array();

// Tablica z wartościami
$tablica = array(1, 2, 3, 4, 5);

 

Dostęp do elementów tablicy odbywa się poprzez indeksy:

echo $tablica[0]; // Wypisze 1
echo $tablica[3]; // Wypisze 4

 

Iteracja po tablicy

Aby przejść przez wszystkie elementy tablicy, możemy użyć pętli for lub foreach:

// Pętla for
for($i = 0; $i < count($tablica); $i++) {
    echo $tablica[$i] . " ";
}

Pętla foreach
foreach ($tablica as $wartosc) {
    echo $wartosc . " ";
}

 

Tablice asocjacyjne

Tablice asocjacyjne pozwalają przypisywać wartości do kluczy zamiast indeksów liczbowych.

$pracownicy = array(
    "szef" => "Nowak",
    "sekretariat" => "Kowalski",
    "biuro" => "Barański"
);

echo $pracownicy["szef"]; // Wypisze "Nowak"

 

Iteracja po tablicy asocjacyjnej:

foreach ($pracownicy as $stanowisko => $nazwisko) {
    echo "$stanowisko: $nazwisko <br>";
}

 

Operacje na tablicach

PHP oferuje wiele funkcji do zarządzania tablicami:

 

$owoce = array("jabłko", "gruszka");

// Dodawanie elementów
array_push($owoce, "banan", "malina"); // Array("jabłko", "gruszka", "banan", "malina")

// Usuwanie ostatniego elementu
array_pop($owoce); // Array("jabłko", "gruszka", "banan")

// Usuwanie pierwszego elementu
array_shift($owoce); // Array("gruszka", "banan")

// Dodawanie elementów na początek
array_unshift($owoce, "ananas", "cytryna"); // Array("ananas", "cytryna", "gruszka", "banan")

// Losowe przetasowanie tablicy
shuffle($owoce); // Kolejność losowa np. Array("gruszka", "banan", "cytryna", "ananas")

// Sortowanie alfabetyczne
sort($owoce); // Array("ananas", "banan", "cytryna", "gruszka")

 

Tablice wielowymiarowe

Tablice wielowymiarowe to tablice zawierające inne tablice.

$tablica2D = array();
for($i = 0; $i < 3; $i++) {
    for($j = 0; $j < 3; $j++) {
        $tablica2D[$i][$j] = $i + $j;
    }
}

 

Wypisanie zawartości tablicy wielowymiarowej:

for($i = 0; $i < 3; $i++) {
    for($j = 0; $j < 3; $j++) {
        echo $tablica2D[$i][$j] . " ";
    }
    echo "<br>";
}

// Efekt działania:
// 0 1 2
// 1 2 3
// 2 3 4