Nach Erledigungsstatus filtern
Teil des Abschnitts Grundlagen der PHP-Journey von Coddy. Lektion 59 von 71.
Aufgabe
EinfachIn der vorherigen Lektion hast du eine Aufgabe aus der Liste entfernt. Füge nun die Möglichkeit hinzu, Aufgaben nach ihrem Erledigungsstatus zu filtern.
Lies vier Eingabezeilen für Aufgabenbeschreibungen ein (drei anfängliche Aufgaben plus eine neue Aufgabe). Lies anschließend eine fünfte Eingabe ein: eine Ganzzahl, die den Index der Aufgabe angibt, die als erledigt markiert werden soll. Lies eine sechste Eingabe ein: eine Ganzzahl, die den Index der zu entfernenden Aufgabe angibt. Lies schließlich eine siebte Eingabe ein: eine Zeichenfolge, 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 basierend auf der Filtereingabe:
- Wenn der Filter
completedlautet, zeige nur Aufgaben an, bei denen"completed"den Werttruehat - Wenn der Filter
pendinglautet, zeige nur Aufgaben an, bei denen"completed"den Wertfalsehat
Durchlaufe die verbleibenden Aufgaben und gib nur diejenigen aus, die dem Filter entsprechen, und verwende dasselbe Format:
- Wenn die Aufgabe erledigt ist:
- [task description] (Done) - Wenn die Aufgabe noch offen ist:
- [task description] (Pending)
Gib jede passende Aufgabe in einer eigenen Zeile aus.
Beispiel:
Wenn die Eingaben Buy groceries, Walk the dog, Finish homework, Call mom, 1, 2 und completed lauten, sollte die Ausgabe folgendermaßen aussehen:
- Walk the dog (Done)Wenn die Eingaben Buy groceries, Walk the dog, Finish homework, Call mom, 1, 2 und pending lauten, sollte die Ausgabe folgendermaßen aussehen:
- Buy groceries (Pending)
- Call mom (Pending)Probier es selbst
<?php
// Vordefinierte Aufgabensammlung
$tasks = [
[
"description" => "Buy groceries",
"completed" => false
],
[
"description" => "Walk the dog",
"completed" => true
],
[
"description" => "Read a book",
"completed" => false
],
[
"description" => "Exercise",
"completed" => true
],
[
"description" => "Clean house",
"completed" => false
],
[
"description" => "Call mom",
"completed" => true
]
];
// Filtertyp-Eingabe lesen
$filterType = trim(fgets(STDIN));
// TODO: Schreibe deinen Code unten
// Verwende eine foreach-Schleife, um durch die Aufgaben zu iterieren
// Verwende bedingte Logik, um Aufgaben basierend auf dem Abschlussstatus zu filtern
// Zeige Ergebnisse im erforderlichen Format 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