Jalara Studio

Erstes Element in einer foreach-Schleife entfernen

#


Folgendes Array ist gegeben:

$arr = array("eins", "zwei", "drei");

Bei der Auswertung soll das erste Element des Arrays fehlen:

// Schlüssel: 1 => Wert: zwei
// Schlüssel: 2 => Wert: drei

Dies lässt sich erreichen, wenn das erste Element dieses Arrays ("eins") bereits vor dem Durchlauf der foreach-Schleife12 mit der Funktion array_slice()3 entfernt wird:4

$arr = array("eins", "zwei", "drei");
foreach (array_slice($arr, 1) as $key => $value) {
   echo "Schlüssel: $key = > Wert: $value<br />\n";
}

Innerhalb eines Durchlaufes kann ebenfalls das erste Element eines Arrays entfernt werden, wie folgendes Codebeispiel zeigt:5

$first = true; 
foreach ($arr as $key => $value) {
    if ( $first ){ 
        $first = false; 
    }
    else{
        echo "Schlüssel: $key; Wert: $value<br />\n";
    }
}

Hierbei erhält eine Variable namens $first den booleschen Wert true. Der Wert der Variable wird nach dem ersten Durchlauf auf false gesetzt, woraufhin der alternative Befehl ausgeführt wird. Die letzte Methode eignet sich auch für Elemente die keinem Array angehören.

Credits: