Leere Listenfälle behandeln
Teil des Abschnitts Grundlagen der PHP-Journey von Coddy. Lektion 60 von 71.
Aufgabe
EinfachIn der vorherigen Lektion hast du Aufgaben nach ihrem Abschlussstatus gefiltert. Füge nun die Behandlung von Szenarien hinzu, in denen das gefilterte Ergebnis leer ist.
Lies vier Eingabezeilen für Aufgabenbeschreibungen ein (drei anfängliche Aufgaben plus eine neue Aufgabe). Lies dann eine fünfte Eingabe: eine Ganzzahl, die den Index der als erledigt zu markierenden Aufgabe darstellt. Lies eine sechste Eingabe: eine Ganzzahl, die den Index der zu entfernenden Aufgabe darstellt. Lies schließlich eine siebte Eingabe: eine Zeichenkette, die entweder completed oder pending lautet, um die Aufgaben zu filtern.
Nachdem du das Array $todos erstellt, die angegebene Aufgabe als erledigt markiert und die Aufgabe am angegebenen Index entfernt hast, filtere die verbleibenden Aufgaben anhand der Filtereingabe.
Überprüfe vor der Anzeige der gefilterten Aufgaben, ob Aufgaben dem Filter entsprechen:
- Wenn keine Aufgaben dem Filter entsprechen, gib Folgendes aus:
No [filter] tasks found.(wobei[filter]entwedercompletedoderpendingist) - Wenn Aufgaben dem Filter entsprechen, zeige sie im selben Format wie zuvor an
Ausgabeformat für passende Aufgaben:
- Wenn die Aufgabe erledigt ist:
- [task description] (Done) - Wenn die Aufgabe noch nicht erledigt ist:
- [task description] (Pending)
Beispiel 1:
Wenn die Eingaben Buy groceries, Walk the dog, Finish homework, Call mom, 1, 1 und completed lauten, sollte die Ausgabe wie folgt aussehen:
No completed tasks found.Beispiel 2:
Wenn die Eingaben Buy groceries, Walk the dog, Finish homework, Call mom, 0, 2 und completed lauten, sollte die Ausgabe wie folgt aussehen:
- Buy groceries (Done)Beispiel 3:
Wenn die Eingaben Buy groceries, Walk the dog, Finish homework, Call mom, 0, 1 und pending lauten, sollte die Ausgabe wie folgt aussehen:
- Finish homework (Pending)
- Call mom (Pending)Probier es selbst
<?php
// Eingabe lesen
$input = trim(fgets(STDIN));
// Initialisiere Aufgabensammlungen basierend auf der Eingabe
if ($input == "empty") {
$tasks = [];
} else {
$tasks = [
[
"description" => "Buy groceries",
"completed" => false
],
[
"description" => "Walk the dog",
"completed" => true
]
];
}
// TODO: Schreibe deinen Code hier
// Überprüfe, ob das Aufgaben-Array leer ist, mit der count()-Funktion
// Zeige geeignete Nachricht für leere oder befüllte Aufgaben an
// Berechne und zeige Zusammenfassende Informationen an
?>Alle Lektionen in Grundlagen
4Vergleichs- und logische Operatoren
VergleichsoperatorenGleichheit und IdentitätLogische Operatoren Teil 1Logische Operatoren Teil 2Zusammenfassung – Einfache Logik2Variablen und Datentypen
ZahlenStrings und AnführungszeichenBoolesche WerteNamenskonventionenRückblick – VariableninitialisierungLeere VariablenString-VerkettungBenutzereingabenIn andere Datentypen umwandeln5Bedingte Logik
If-AnweisungIf - ElseDer ternäre OperatorNull-Koaleszenz-OperatorSwitch-AnweisungZusammenfassung – Entscheidungen treffen8Schleifen
For-SchleifeWhile-SchleifeForeach-SchleifeSchleifen mit Schlüsseln und WertenBreak-AnweisungContinue-AnweisungRückblick – Iterieren über Daten11Abschließende Herausforderungen
Herausforderung – FakultätsberechnungHerausforderung – Längstes WortHerausforderung – Vokalzähler3Grundlegende Operatoren
Arithmetische OperatorenModulo-OperatorPotenzierungsoperatorZusammengesetzte ZuweisungInkrement/DekrementOperatorrangfolgeRückblick – Einfache BerechnungenString-Operatoren6Arrays Teil 1 – Indexiert
Einführung in ArraysIndexierte Arrays erstellenElemente per Index abrufenElemente per Index ändernArray-Größe mit CountElemente zu einem Array hinzufügenRückblick – Eine einfache Liste verwalten9Projekt: Einfache To-do-Liste
Projektübersicht & DatenNeue Aufgabe hinzufügenÜbe selbstständig: Online-PHP-Compiler