Tablice i Pętle
Zadanie 1.1: Tablice i Pętle w PHP - Kantor 2.0
Wstęp
W poprzednim zadaniu ("Złoty Grosz") mieliśmy tylko jedną walutę. Ale prawdziwy kantor obsługuje ich dziesiątki! Czy wyobrażasz sobie tworzenie zmiennej dla każdej waluty? $kurs_usd, $kurs_eur, $kurs_chf, $kurs_gbp... To byłby koszmar.
Z pomocą przychodzą Tablice (Arrays) - kontenery, które mogą przechowywać wiele wartości pod jedną nazwą. A żeby wyświetlić te wszystkie wartości, użyjemy pętli foreach.
Opis z Przykładami
1. Tablice (Arrays)
W PHP tablice są niezwykle potężne. Najczęściej używamy dwóch typów:
- Tablice zwykłe (indeksowane) - lista elementów.
- Tablice asocjacyjne - lista par klucz => wartość (jak słownik).
<?php
// Tablica zwykła
$waluty = ["USD", "EUR", "GBP"];
echo $waluty[0]; // Wyświetli: USD
// Tablica asocjacyjna (Klucz => Wartość)
$kursy = [
"USD" => 4.05,
"EUR" => 4.35,
"GBP" => 5.20
];
echo $kursy["EUR"]; // Wyświetli: 4.35
?>
2. Pętla foreach
To najwygodniejszy sposób na przeglądanie tablic.
<?php
$produkty = ["Chleb" => 3.50, "Mleko" => 2.99, "Masło" => 6.50];
foreach ($produkty as $nazwa => $cena) {
echo "Produkt $nazwa kosztuje $cena PLN.<br>";
}
?>
Twoje Zadanie (Motivation)
Twój kantor "Złoty Grosz" się rozrasta! Klienci pytają o funty, franki i dolary. Nie masz czasu ręcznie zmieniać HTML-a za każdym razem, gdy zmienia się kurs. Potrzebujesz systemu, który automatycznie wyświetli tabelę kursów na podstawie jednej zmiennej (tablicy) w PHP.
Polecenia do wykonania:
Stwórz plik kantor.php (lub edytuj index.php z poprzedniego zadania, ale lepiej zacząć na czysto).
-
Otwórz znacznik PHP.
-
Zdefiniuj tablicę asocjacyjną
$kursy, zawierającą co najmniej 4 waluty (np. USD, EUR, GBP, CHF) i ich aktualne kursy (wymyśl je). -
Zdefiniuj zmienną
$kwota_plnz wartością np.500(tyle klient chce wymienić).[!IMPORTANT] Commit 1: Definicja tablicy kursów.
-
W sekcji HTML stwórz nagłówek
<h1>Kantor "Złoty Grosz" - Kursy</h1>. -
Stwórz tabelę HTML (
<table>).- Dodaj nagłówki tabeli (
<thead>): "Waluta", "Kurs", "Za 500 PLN otrzymasz". - W
<tbody>użyj pętliforeach, aby wygenerować wiersz (<tr>) dla każdej waluty.
- Dodaj nagłówki tabeli (
-
Wewnątrz pętli:
- Wyświetl nazwę waluty (klucz tablicy).
- Wyświetl kurs (wartość tablicy).
- Oblicz ile waluty klient otrzyma za
$kwota_pln(czyli$kwota_pln / $kurs). - Zaokrąglij wynik do 2 miejsc po przecinku (funkcja
round($wynik, 2)).
[!IMPORTANT] Commit 2: Tabela generowana pętlą z obliczeniami.
-
Dla chętnych: Dodaj instrukcję warunkową
ifwewnątrz pętli. Jeśli kurs waluty jest wyższy niż 5.00 PLN, wyświetl go kolorem czerwonym (dodaj styl CSS inline lub klasę), bo to "Droga waluta!".[!IMPORTANT] Commit 3: Wyróżnienie drogich walut.
Git Help
W terminalu:
git add .
git commit -m "Zadanie 1.1: Punkt X wykonany"
Warunek Zaliczenia
Poprawne wyświetlenie tabeli HTML z kursami i przeliczeniami wygenerowanej przez pętlę foreach na podstawie tablicy PHP.