W budowie
Prezentacja modułu

Część 08 · Tablice — kurs PHP INF.03

Część 08 kursu PHP pod kątem INF.03: Tablice. Teoria w skrócie i 16 ćwiczeń z automatycznym sprawdzaniem — tablice indeksowane i asocjacyjne, pętla foreach, count, min/max/array_sum, implode i explode.

  • 45 min
  • 16 slajdów
  • Notatki nauczyciela: N
  • Strona modułu: otwórz
Plan · 45 min

Co dziś robimy

  1. 12 minTablice indeksowane Elementy dodajemy przez $tab[] = 'nowy'; — PHP sam nada kolejny numer.
  2. 12 minTablice asocjacyjne Do sprawdzenia, czy klucz istnieje, służy array_key_exists() , a do wartości domyślnej…
  3. 12 minIteracja i funkcje tablicowe Do porządkowania służą sort() (wartości), ksort() (klucze) i rsort() (malejąco).
  4. 4 minĆwiczenia 16 zadań w module — wybierz 3–4 na lekcję
  5. 5 minPodsumowanie bilet wyjściowy i zadanie domowe
Atom 1 z 4 · ~12 min

Tablice indeksowane

Tablica przechowuje wiele wartości pod jedną nazwą. W tablicy indeksowanej kluczami są kolejne liczby od zera: $oceny = [5, 4, 3]; , więc $oceny[0] to 5 .

  • Elementy dodajemy przez $tab[] = 'nowy'; — PHP sam nada kolejny numer.
  • Do policzenia elementów służy count() , a do sprawdzenia ostatniego indeksu count($tab) - 1 .
  • Tablicę można zbudować pętlą, np.
Kod · atom 1 · ~3 min

Jak to wygląda w kodzie

$oceny = [5, 4, 3];
$oceny[] = 6;

echo 'Elementow: ' . count($oceny);
echo '<p>Pierwsza ocena: ' . $oceny[0] . '</p>';
echo '<p>Ostatnia ocena: ' . $oceny[count($oceny) - 1] . '</p>';
Przykład na żywo · atom 1 · ~3 min

Uruchom i pokaż

$oceny = [5, 4, 3];
$oceny[] = 6;

echo 'Elementow: ' . count($oceny);
echo '<p>Pierwsza ocena: ' . $oceny[0] . '</p>';
echo '<p>Ostatnia ocena: ' . $oceny[count($oceny) - 1] . '</p>';
Sprawdzenie · atom 1 · ~2 min

Pytanie do klasy

Od jakiego indeksu zaczyna się tablica?

Atom 2 z 4 · ~12 min

Tablice asocjacyjne

W tablicy asocjacyjnej kluczem jest nazwa, a nie liczba: $uczen = ['imie' => 'Ola', 'klasa' => '3TI']; . Odczyt wygląda jak przy tablicy indeksowanej, tylko w nawiasach podajemy klucz tekstowy.

  • Do sprawdzenia, czy klucz istnieje, służy array_key_exists() , a do wartości domyślnej operator ??
  • Tablice asocjacyjne świetnie opisują rekord: jeden wiersz z bazy, konfigurację aplikacji albo dane formularza.
Kod · atom 2 · ~3 min

Jak to wygląda w kodzie

$uczen = [
    'imie' => 'Ola',
    'klasa' => '3TI',
    'punkty' => 18,
];

echo $uczen['imie'] . ' z klasy ' . $uczen['klasa'];
echo '<p>Punkty: ' . $uczen['punkty'] . '</p>';
echo '<p>Email: ' . ($uczen['email'] ?? 'brak') . '</p>';
Przykład na żywo · atom 2 · ~3 min

Uruchom i pokaż

$uczen = [
    'imie' => 'Ola',
    'klasa' => '3TI',
    'punkty' => 18,
];

echo $uczen['imie'] . ' z klasy ' . $uczen['klasa'];
echo '<p>Punkty: ' . $uczen['punkty'] . '</p>';
echo '<p>Email: ' . ($uczen['email'] ?? 'brak') . '</p>';
Sprawdzenie · atom 2 · ~2 min

Pytanie do klasy

Czym jest klucz w tablicy asocjacyjnej?

Atom 3 z 4 · ~12 min

Iteracja i funkcje tablicowe

foreach przechodzi po tablicy i podstawia kolejne wartości. W wersji foreach ($tab as $klucz => $wartosc) otrzymujemy też klucze — to najwygodniejszy sposób wypisania tablicy asocjacyjnej.

  • Do porządkowania służą sort() (wartości), ksort() (klucze) i rsort() (malejąco).
  • Funkcje array_sum() , max() i min() liczą statystyki bez pętli.
  • Do łączenia tekstu z tablicy służy implode(', ', $tab) , a do rozbijania tekstu explode() .
  • Para tych funkcji często pojawia się w zadaniach egzaminacyjnych.
Kod · atom 3 · ~3 min

Jak to wygląda w kodzie

$punkty = ['Ola' => 18, 'Jan' => 12, 'Ewa' => 20];

foreach ($punkty as $imie => $ile) {
    echo '<p>' . $imie . ': ' . $ile . '</p>';
}

echo '<p>Suma: ' . array_sum($punkty) . '</p>';
echo '<p>Najlepszy: ' . max($punkty) . '</p>';
echo '<p>Lista: ' . implode(', ', array_keys($punkty)) . '</p>';
Przykład na żywo · atom 3 · ~3 min

Uruchom i pokaż

$punkty = ['Ola' => 18, 'Jan' => 12, 'Ewa' => 20];

foreach ($punkty as $imie => $ile) {
    echo '<p>' . $imie . ': ' . $ile . '</p>';
}

echo '<p>Suma: ' . array_sum($punkty) . '</p>';
echo '<p>Najlepszy: ' . max($punkty) . '</p>';
echo '<p>Lista: ' . implode(', ', array_keys($punkty)) . '</p>';
Sprawdzenie · atom 3 · ~2 min

Pytanie do klasy

Co daje foreach z kluczem?

Zamknięcie · ~3 min

Co zabrać z lekcji

  • Elementy dodajemy przez $tab[] = 'nowy'; — PHP sam nada kolejny numer.
  • Do sprawdzenia, czy klucz istnieje, służy array_key_exists() , a do wartości domyślnej operator ??
  • Do porządkowania służą sort() (wartości), ksort() (klucze) i rsort() (malejąco).
  • Ćwiczenia
Bilet wyjściowy: Co zwraca array_sum()?
Odpowiedź: c) Sumę wartości
Hyżyk· Część 08 · Tablice — kurs PHP INF.03 moduł 1 / 1