Menu
Coddy logo textTech

Entfernen mit 'array_shift'

Teil des Abschnitts Logik & Ablauf der PHP-Journey von Coddy. Lektion 13 von 68.

Die Funktion array_shift() entfernt das erste Element aus einem array und gibt den entfernten Wert zurück. Dies ist das Gegenteil von array_unshift(), das Elemente am Anfang eines array hinzufügt.

So funktioniert es:

<?php
$queue = ["Alice", "Bob", "Charlie"];
$firstPerson = array_shift($queue);
echo $firstPerson;  // Ausgabe: Alice
print_r($queue);    // Outputs: Array ( [0] => Bob [1] => Charlie )
?>

Beachte, dass array_shift() sowohl das ursprüngliche Array verändert als auch das entfernte Element zurückgibt. Nachdem das erste Element entfernt wurde, rücken alle verbleibenden Elemente automatisch nach unten, um die Lücke zu füllen: „Bob“ verschiebt sich von Index 1 zu Index 0, und „Charlie“ verschiebt sich von Index 2 zu Index 1.

Diese Neuindizierung erfolgt automatisch und stellt sicher, dass dein Array eine korrekte numerische Sequenz beibehält. Wenn du array_shift() auf einem leeren Array verwendest, gibt es null zurück, ohne einen Fehler zu verursachen.

Diese Funktion ist besonders nützlich für die Implementierung von Warteschlangen, bei denen du Elemente in der Reihenfolge „zuerst hinein, zuerst heraus“ verarbeitest, etwa beim Umgang mit Kunden in einer Warteschlange oder bei der Verarbeitung von Aufgaben in der Reihenfolge, in der sie empfangen wurden.

challenge icon

Aufgabe

Einfach

Du erhältst zwei Eingaben: ein anfängliches Array von Kunden, die in einer Warteschlange warten, im JSON-Format sowie eine Zahl, die angibt, wie viele Kunden bedient werden sollen. Lies beide Eingaben ein, wandle die JSON-Zeichenfolge in ein Array um, verwende array_shift() die angegebene Anzahl von Malen, um bediente Kunden vom Anfang der Warteschlange zu entfernen, und gib das endgültige Array mit print_r() aus.

Eingabeformat: Zwei Zeilen – die erste Zeile enthält ein JSON-Array (Beispiel: ["Alice","Bob","Charlie","Diana"]), die zweite Zeile enthält die Anzahl der zu bedienenden Kunden (eine Zahl).

Erwartete Ausgabe: Das Array nach dem Entfernen der bedienten Kunden vom Anfang der Warteschlange, dargestellt mit print_r().

Probier es selbst

<?php
// Lies das JSON-Array der Kunden
$jsonInput = fgets(STDIN);
$customers = (array)json_decode($jsonInput, true);

// Lies die Anzahl der zu bedienenden Kunden
$numToServe = intval(fgets(STDIN));

// TODO: Schreibe deinen Code darunter
// Verwende array_shift(), um Kunden vom Anfang der Schlange zu entfernen


// Gib das endgültige Array aus
print_r($customers);
?>
quiz iconTeste dich selbst

Diese Lektion enthält ein kurzes Quiz. Starte die Lektion, um es zu beantworten und deinen Fortschritt zu speichern.

Alle Lektionen in Logik & Ablauf

Übe selbstständig: Online-PHP-Compiler