Menu
Coddy logo textTech

Dodawanie nowych par klucz-wartość

Część sekcji Podstawy ścieżki PHP w Coddy. Lekcja 44 z 71.

Wiesz już, jak modyfikować istniejące wartości w tablicy asocjacyjnej. Ale co się stanie, gdy przypiszesz wartość do klucza, który jeszcze nie istnieje? PHP automatycznie go utworzy.

<?php
$person = [
    "name" => "Alice",
    "age" => 25
];

$person["city"] = "Paris";
$person["job"] = "Developer";

echo $person["city"]; // Paris
echo $person["job"];  // Developer
?>

Składnia jest taka sama jak przy modyfikowaniu: $array["key"] = value, ale gdy klucz nie istnieje, PHP dodaje do tablicy nową parę klucz-wartość zamiast aktualizować istniejącą.

Jest to szczególnie przydatne przy stopniowym budowaniu tablicy asocjacyjnej:

<?php
$settings = [];

$settings["theme"] = "dark";
$settings["language"] = "en";
$settings["notifications"] = true;

echo $settings["theme"]; // dark
?>

Rozpoczęcie od pustej tablicy i dodawanie par w razie potrzeby to powszechny wzorzec podczas zbierania danych w czasie lub gdy nie znasz z góry wszystkich kluczy.

challenge icon

Wyzwanie

Łatwy

Rozpocznij od pustej tablicy asocjacyjnej o nazwie $profile.

Wczytaj następujące dane:

  • Ciąg znaków key1 — pierwszy klucz do dodania
  • Ciąg znaków value1 — wartość dla key1
  • Ciąg znaków key2 — drugi klucz do dodania
  • Ciąg znaków value2 — wartość dla key2
  • Ciąg znaków key3 — trzeci klucz do dodania
  • Ciąg znaków value3 — wartość dla key3

Dodaj każdą parę klucz-wartość do tablicy $profile, a następnie wypisz:

  1. Wartość powiązaną z key1
  2. Wartość powiązaną z key2
  3. Wartość powiązaną z key3

Wypisz każdy wynik w osobnym wierszu.

Przykład:

Jeśli dane wejściowe to username, alice123, email, alice@example.com, status i active, wynik powinien wyglądać następująco:

alice123
alice@example.com
active

Jeśli dane wejściowe to brand, Nike, size, 42, color i black, wynik powinien wyglądać następująco:

Nike
42
black

Spróbuj swoich sił

<?php
// Wczytaj dane wejściowe
$key1 = trim(fgets(STDIN));
$value1 = trim(fgets(STDIN));
$key2 = trim(fgets(STDIN));
$value2 = trim(fgets(STDIN));
$key3 = trim(fgets(STDIN));
$value3 = trim(fgets(STDIN));

// Zacznij od pustej tablicy asocjacyjnej
$profile = [];

// TODO: Napisz swój kod poniżej
// Dodaj każdą parę klucz-wartość do tablicy $profile


// Wypisz wartości przypisane do poszczególnych kluczy
echo $profile[$key1] . "\n";
echo $profile[$key2] . "\n";
echo $profile[$key3] . "\n";
?>
quiz iconSprawdź się

Ta lekcja zawiera krótki quiz. Zacznij lekcję, żeby na niego odpowiedzieć i śledzić swoje postępy.

Wszystkie lekcje w sekcji Podstawy

Poćwicz samodzielnie: Kompilator PHP online