Adding New Key-Value Pairs
Teil des Abschnitts Grundlagen der PHP-Journey von Coddy — Lektion 44 von 71.
Sie haben gelernt, wie man bestehende Werte in einem assoziativen Array modifiziert. Aber was passiert, wenn man einen Wert einem Schlüssel zuweist, der noch nicht existiert? PHP erstellt ihn automatisch für Sie.
<?php
$person = [
"name" => "Alice",
"age" => 25
];
$person["city"] = "Paris";
$person["job"] = "Developer";
echo $person["city"]; // Paris
echo $person["job"]; // Developer
?>Die Syntax ist dieselbe wie beim Modifizieren—$array["key"] = value—aber wenn der Schlüssel nicht existiert, fügt PHP ein neues Schlüssel-Wert-Paar zum Array hinzu, anstatt ein existierendes zu aktualisieren.
Dies ist besonders nützlich beim schrittweisen Aufbau eines assoziativen Arrays:
<?php
$settings = [];
$settings["theme"] = "dark";
$settings["language"] = "en";
$settings["notifications"] = true;
echo $settings["theme"]; // dark
?>Es ist ein gängiges Muster, mit einem leeren Array zu beginnen und Paare nach Bedarf hinzuzufügen, wenn Daten im Laufe der Zeit gesammelt werden oder wenn nicht alle Schlüssel im Voraus bekannt sind.
Aufgabe
EinfachBeginnen Sie mit einem leeren assoziativen Array namens $profile.
Lesen Sie die folgenden Eingaben:
- Eine Zeichenkette
key1- der erste hinzuzufügende Schlüssel - Eine Zeichenkette
value1- der Wert fürkey1 - Eine Zeichenkette
key2- der zweite hinzuzufügende Schlüssel - Eine Zeichenkette
value2- der Wert fürkey2 - Eine Zeichenkette
key3- der dritte hinzuzufügende Schlüssel - Eine Zeichenkette
value3- der Wert fürkey3
Fügen Sie jedes Schlüssel-Wert-Paar zum $profile-Array hinzu, dann geben Sie aus:
- Den Wert, der mit
key1verknüpft ist - Den Wert, der mit
key2verknüpft ist - Den Wert, der mit
key3verknüpft ist
Geben Sie jedes Ergebnis in einer separaten Zeile aus.
Beispiel:
Wenn die Eingaben username, alice123, email, alice@example.com, status und active sind, sollte die Ausgabe lauten:
alice123
alice@example.com
activeWenn die Eingaben brand, Nike, size, 42, color und black sind, sollte die Ausgabe lauten:
Nike
42
blackSpickzettel
Um ein neues Schlüssel-Wert-Paar zu einem assoziativen Array hinzuzufügen, verwenden Sie die gleiche Syntax wie beim Ändern: $array["key"] = value. Wenn der Schlüssel nicht existiert, erstellt PHP ihn automatisch:
<?php
$person = [
"name" => "Alice",
"age" => 25
];
$person["city"] = "Paris";
$person["job"] = "Developer";
?>Sie können mit einem leeren Array beginnen und es schrittweise aufbauen:
<?php
$settings = [];
$settings["theme"] = "dark";
$settings["language"] = "en";
$settings["notifications"] = true;
?>Probier es selbst
<?php
// Eingaben lesen
$key1 = trim(fgets(STDIN));
$value1 = trim(fgets(STDIN));
$key2 = trim(fgets(STDIN));
$value2 = trim(fgets(STDIN));
$key3 = trim(fgets(STDIN));
$value3 = trim(fgets(STDIN));
// Starte mit einem leeren assoziativen Array
$profile = [];
// TODO: Schreibe deinen Code unten
// Füge jedes Schlüssel-Wert-Paar zum $profile-Array hinzu
// Gib die zu jedem Schlüssel zugeordneten Werte aus
echo $profile[$key1] . "\n";
echo $profile[$key2] . "\n";
echo $profile[$key3] . "\n";
?>Diese Lektion enthält ein kurzes Quiz. Starte die Lektion, um es zu beantworten und deinen Fortschritt zu speichern.
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