Menu
Coddy logo textTech

Modifying Values by Key

Teil des Abschnitts Grundlagen der PHP-Journey von Coddy — Lektion 43 von 71.

Genauso wie Sie gelernt haben, indizierte Array-Elemente über ihre Position zu ändern, können Sie Werte in assoziativen Arrays mithilfe ihrer Schlüssel aktualisieren. Die Syntax ist identisch – weisen Sie einem vorhandenen Schlüssel einen neuen Wert zu.

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

$person["age"] = 26;
$person["city"] = "London";

echo $person["age"];  // 26
echo $person["city"]; // London
?>

Wenn Sie einem bereits existierenden Schlüssel einen Wert zuweisen, ersetzt PHP einfach den alten Wert durch den neuen. Der Schlüssel selbst bleibt unverändert – nur der zugehörige Wert wird aktualisiert.

Dies ist nützlich, wenn sich Daten im Laufe der Zeit ändern müssen. Zum Beispiel das Aktualisieren des Status eines Benutzers, das Ändern des Preises eines Produkts oder das Korrigieren von Informationen, die falsch eingegeben wurden. Der Schlüssel fungiert als stabiler Referenzpunkt, während der Wert nach Bedarf geändert werden kann.

challenge icon

Aufgabe

Einfach

Lies eine Eingabezeile, die ein JSON-Objekt enthält, das die Informationen eines Produkts darstellt (z. B. {"name": "Laptop", "price": 999, "stock": 50}).

Lies dann vier weitere Eingaben:

  • Ein String key1 - der erste zu aktualisierende Schlüssel
  • Ein String value1 - der neue Wert für key1
  • Ein String key2 - der zweite zu aktualisierende Schlüssel
  • Ein String value2 - der neue Wert für key2

Erstelle ein assoziatives Array aus der JSON-Eingabe und dann:

  1. Aktualisiere den mit key1 verknüpften Wert auf value1
  2. Aktualisiere den mit key2 verknüpften Wert auf value2
  3. Gib den aktualisierten Wert bei key1 aus
  4. Gib den aktualisierten Wert bei key2 aus

Gib jedes Ergebnis in einer separaten Zeile aus.

Beispiel:

Wenn die Eingaben {"name": "Laptop", "price": 999, "stock": 50}, price, 1099, stock und 45 sind, sollte die Ausgabe wie folgt aussehen:

1099
45

Wenn die Eingaben {"city": "Paris", "country": "France", "population": 2000000}, city, London, country und UK sind, sollte die Ausgabe wie folgt aussehen:

London
UK

Probier es selbst

<?php
// Lies die JSON-Eingabe
$jsonInput = trim(fgets(STDIN));

// Lies die zu aktualisierenden Schlüssel und Werte
$key1 = trim(fgets(STDIN));
$value1 = trim(fgets(STDIN));
$key2 = trim(fgets(STDIN));
$value2 = trim(fgets(STDIN));

// Konvertiere JSON in ein assoziatives Array
$product = (array)json_decode($jsonInput, true);

// TODO: Schreibe deinen Code unten
// 1. Aktualisiere den mit key1 verknüpften Wert auf value1
// 2. Aktualisiere den mit key2 verknüpften Wert auf value2
// 3. Gib die aktualisierten Werte aus

?>
quiz iconTeste dich selbst

Diese Lektion enthält ein kurzes Quiz. Starte die Lektion, um es zu beantworten und deinen Fortschritt zu speichern.

Alle Lektionen in Grundlagen