Recap - Key-Value Data Store
Teil des Abschnitts Grundlagen der PHP-Journey von Coddy. Lektion 46 von 71.
Aufgabe
EinfachLies eine Eingabezeile mit einem JSON-Objekt, das die Informationen eines Kontakts darstellt (z. B. {"name": "Alice", "phone": "555-1234"}).
Lies dann die folgenden Eingaben:
- Einen String
keyToCheck- ein Schlüssel, um zu prüfen, ob er existiert - Einen String
keyToModify- ein bestehender Schlüssel, der aktualisiert werden soll - Einen String
newValue- der neue Wert fürkeyToModify - Einen String
newKey- ein neuer Schlüssel, der hinzugefügt werden soll - Einen String
newKeyValue- der Wert fürnewKey
Erstelle ein assoziatives Array aus der JSON-Eingabe und führe dann die folgenden Operationen aus:
- Überprüfe, ob
keyToCheckexistiert. GibFoundaus, wenn er existiert, andernfalls gibNot foundaus. - Ändere den Wert bei
keyToModifyzunewValue. - Füge ein neues Schlüssel-Wert-Paar mit
newKeyundnewKeyValuehinzu. - Gib den aktualisierten Wert bei
keyToModifyaus. - Gib den Wert bei
newKeyaus.
Gib jedes Ergebnis in einer eigenen Zeile aus.
Beispiel:
Wenn die Eingaben {"name": "Alice", "phone": "555-1234"}, email, name, Bob, city und Paris lauten, sollte die Ausgabe wie folgt aussehen:
Not found
Bob
ParisWenn die Eingaben {"product": "Laptop", "price": 999}, price, product, Tablet, stock und 25 lauten, sollte die Ausgabe wie folgt aussehen:
Found
Tablet
25Probier es selbst
<?php
// Lies die JSON-Eingabe und konvertiere sie in ein assoziatives Array
$jsonInput = trim(fgets(STDIN));
$contact = (array)json_decode($jsonInput, true);
// Lies die anderen Eingaben
$keyToCheck = trim(fgets(STDIN));
$keyToModify = trim(fgets(STDIN));
$newValue = trim(fgets(STDIN));
$newKey = trim(fgets(STDIN));
$newKeyValue = trim(fgets(STDIN));
// TODO: Schreibe deinen Code darunter
// 1. Prüfe, ob keyToCheck existiert und gib den genauen Text aus den Anweisungen oder den genauen Text aus den Anweisungen aus
// 2. Ändere den Wert bei keyToModify zu newValue
// 3. Füge ein neues Schlüssel-Wert-Paar mit newKey und newKeyValue hinzu
// 4. Gib den aktualisierten Wert bei keyToModify aus
// 5. Gib den Wert bei newKey aus
?>Alle Lektionen in Grundlagen
4Comparison & Logical Operators
Comparison OperatorsEquality & IdentityLogical Operators Part 1Logical Operators Part 2Recap - Simple Logic7Arrays Part 2 - Associative
Intro to Associative ArraysAccessing Values by KeyModifying Values by KeyAdding New Key-Value PairsCheck if Key ExistsRecap - Key-Value Data Store2Variables and Data Types
NumbersStrings and QuotesBooleansNaming ConventionsRecap - Variable InitEmpty VariablesString ConcatenationGetting User InputCast to Different Types5Conditional Logic
If StatementIf - ElseThe Ternary OperatorNull Coalescing OperatorSwitch StatementRecap - Making Decisions3Basic Operators
Arithmetic OperatorsModulo OperatorExponentiation OperatorCombined AssignmentIncrement/DecrementOperator PrecedenceRecap - Simple CalculationsString OperatorsÜbe selbstständig: Online-PHP-Compiler