Einem Schüler eine Note hinzufügen
Teil des Abschnitts Logik & Ablauf der PHP-Journey von Coddy — Lektion 35 von 68.
Aufgabe
EinfachSie erhalten drei Eingaben: ein JSON-Objekt, das das bestehende Notenbuch der Schüler darstellt, den Namen eines Schülers und eine hinzuzufügende Note. Das Notenbuch verwendet Schülernamen als Schlüssel, wobei jeder Schüler eine "id" und ein "grades"-Array hat. Die zweite Eingabe ist der Name des Schülers und die dritte Eingabe ist die hinzuzufügende Note (als Zahl).
Lesen Sie alle drei Eingaben ein, konvertieren Sie den JSON-String in ein Notenbuch-Array, suchen Sie den angegebenen Schüler, fügen Sie die neue Note seinem grades-Array hinzu und geben Sie das aktualisierte Notenbuch mit print_r() aus.
Eingabeformat:
- Erste Zeile: Ein JSON-Objekt, das das bestehende Notenbuch darstellt (Beispiel:
{"Alice":{"id":101,"grades":[85,92,78]},"Bob":{"id":102,"grades":[90,88,95]},"Charlie":{"id":103,"grades":[76,84,89]}}) - Zweite Zeile: Der Name des Schülers (Beispiel:
Alice) - Dritte Zeile: Die hinzuzufügende Note (Beispiel:
88)
Erwartete Ausgabe: Das aktualisierte Notenbuch-Array, angezeigt mit print_r(), wobei die neue Note dem grades-Array des angegebenen Schülers hinzugefügt wurde.
Probier es selbst
<?php
// Die Notenbuch-JSON-Zeichenfolge lesen
$gradebookJson = fgets(STDIN);
// Den Namen des Schülers lesen
$studentName = trim(fgets(STDIN));
// Die hinzuzufügende Note lesen
$grade = intval(fgets(STDIN));
// JSON in Array umwandeln
$gradebook = (array)json_decode($gradebookJson, true);
// TODO: Schreiben Sie Ihren Code unten
// Suchen Sie den Schüler und fügen Sie die neue Note zu seinem Noten-Array hinzu
// Das aktualisierte Notenbuch ausgeben
print_r($gradebook);
?>Alle Lektionen in Logik & Ablauf
1Fortgeschrittene Funktionen
Anonyme FunktionenClosures und 'use'Arrow FunctionsCallback-FunktionenVerwendung von 'call_user_func'VariablenfunktionenReferenzübergabeRekursive FunktionenRückblick: Funktions-Medley4Mehrdimensionale Arrays
Ein 2D-Array erstellenZugriff auf 2D-Array-ElementeÄndern von 2D-Array-ElementenIterieren mit verschachtelten Schleifen2D assoziative ArraysZusammenfassung: Einfache Gitter-Übung2Fortgeschrittene Array-Manipulationen
Hinzufügen mit 'array_push'Entfernen mit 'array_pop'Hinzufügen mit 'array_unshift'Entfernen mit 'array_shift'Indizierte Arrays zusammenführenAssoziative Arrays zusammenführenExtrahieren mit 'array_slice'Werte mit 'in_array'Schlüssel mit 'array_search'Rückblick: Playlist-Übung5Schüler-Notenbuch
Projekt-Setup: DatenstrukturEinen neuen Schüler hinzufügenEinem Schüler eine Note hinzufügenDurchschnittsnote eines Schülers berechnenDen besten Schüler findenEin Zeugnis erstellen3Arrays sortieren
Indizierte Arrays aufsteigend sortierenIndizierte Arrays absteigend sortierenAssoziative Arrays nach Wert sortierenAssoziative Arrays nach Schlüssel sortierenNatürliche SortierungBenutzerdefiniertes Sortieren mit 'usort'Recap: Leaderboard-Sortierung