Rückblick: Playlist-Übung
Teil des Abschnitts Logik & Ablauf der PHP-Journey von Coddy — Lektion 19 von 68.
Aufgabe
EinfachSie erhalten vier Eingaben: ein initiales Playlist-Array im JSON-Format, einen Song, der am Ende hinzugefügt werden soll, einen Song, der am Anfang hinzugefügt werden soll, und einen Songnamen, nach dem gesucht werden soll. Lesen Sie alle vier Eingaben ein, konvertieren Sie den JSON-String in ein Array, fügen Sie den zweiten Song mit array_push() am Ende hinzu, fügen Sie den dritten Song mit array_unshift() am Anfang hinzu und verwenden Sie dann array_search(), um die Position des vierten Songs in der modifizierten Playlist zu finden. Geben Sie die Position aus, falls sie gefunden wurde, oder geben Sie "Song not found" aus, falls der Song nicht in der Playlist existiert.
Eingabeformat: Vier Zeilen - die erste Zeile enthält ein JSON-Array von Songs (Beispiel: ["Song A","Song B","Song C"]), die zweite Zeile enthält einen Songnamen, der am Ende hinzugefügt werden soll, die dritte Zeile enthält einen Songnamen, der am Anfang hinzugefügt werden soll, die vierte Zeile enthält einen Songnamen, nach dem gesucht werden soll
Erwartete Ausgabe: Entweder die numerische Indexposition des gesuchten Songs (beginnend bei 0) in der modifizierten Playlist oder der Text "Song not found", falls der Song nicht existiert
Probier es selbst
<?php
// Alle vier Eingaben lesen
$playlistJson = trim(fgets(STDIN));
$songToAddEnd = trim(fgets(STDIN));
$songToAddBeginning = trim(fgets(STDIN));
$songToSearch = trim(fgets(STDIN));
// JSON-String in Array umwandeln
$playlist = (array)json_decode($playlistJson, true);
// TODO: Schreiben Sie Ihren Code unten
// 1. Fügen Sie $songToAddEnd am Ende der Playlist mit array_push() hinzu
// 2. Fügen Sie $songToAddBeginning am Anfang der Playlist mit array_unshift() hinzu
// 3. Suchen Sie nach $songToSearch in der geänderten Playlist mit array_search()
// 4. Speichern Sie das Ergebnis und geben Sie entweder die Position oder "Song not found" aus
// Ergebnis ausgeben
echo $result;
?>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-Übung3Arrays 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