4.10.2 Übersicht Array-Funktionen
Wichtige Array-Funktionen
Funktion | Erklärung |
---|---|
count() | Bestimmt die Anzahl der Elemente in einem Array. |
next() | Rückt den Zeiger des Arrays auf das folgende Element. |
prev() | Rückt den Zeiger des Arrays auf das vorherige Element. |
end() | Setzt den Zeiger des Arrays auf das letzte Element. |
current() | Liefert das aktuelle Element eines Arrays. |
key() | Liefert den Schlüssel eines assoziativen Arrays. |
list() | Überträgt Elemente eines Arrays auf einzelne Variablen. |
unset() | Entfernt ein Element aus einem Array anhand seines Schlüssels. |
implode() | Verbindet die Elemente eines Arrays zu einem String mit einem Trennzeichen. |
Weitere Array-Funktionen
Funktion | Erklärung |
---|---|
array_keys() | Auslesen der Keys eines assoziativen Arrays. Hier ein Beispiel |
array_pop() | Liefert und löscht das letzte Element eines indizierten oder assoziativen Arrays. |
array_shift() | Liefert und löscht das erste Element eines indizierten oder assoziativen Arrays. |
array_unshift() | Fügt ein oder mehr Elemente am Anfang eines Arrays ein. |
array_slice() | Extrahiert ein Teil-Array aus einem Array. |
array_values() | Gibt alle Werte eines Arrays zurück und indexiert sie neu ab 0. |
Beispiel für count(), current(), next() und end()
<?php
$cmyk = ["Cyan", "Magenta", "Yellow", "Key"];
echo "Elementanzahl: ", count($cmyk);
echo "<br>aktuelles Element: ", current($cmyk);
echo "<br>nächstes Element: ", next($cmyk);
echo "<br>letztes Element: ", end($cmyk);
Ausgabe:
Elementanzahl: 4
aktuelles Element: Cyan
nächstes Element: Magenta
letztes Element: Key
Beispiel für implode() und array_slice()
<?php
// Daten aus einer "Tabelle"
// nur die Ziffern in der Mitte sollen "herausgeholt" werden
$data = [
['x', 'x', 1, 2, 3, 'x', 'x'],
['x', 'x', 4, 5, 6, 'x', 'x'],
['x', 'x', 7, 8, 9, 'x', 'x']
];
// Extraktion der Nutzdaten
foreach ($data as $row) {
echo implode("; ", array_slice($row, 2, 3)) . "<br>";
}
Ausgabe:
1; 2; 3
4; 5; 6
7; 8; 9
Die Funktion array_slice(Array, Offset, Anzahl)
arbeitet mit drei Parametern. Zuerst wird das Array angegeben, dann wird angegeben, wie viele Elemente übersprungen werden sollen (= Offset) und als drittes wird die Anzahl der Elemente angegeben, die ausgelesen werden sollen.
Beispiel für unset() bei einem indizierten Array
<?php
$zahlen = [10, 20, 30, 40, 50];
// Entferne das Element mit dem Index 2 (Wert: 30)
unset($zahlen[2]);
// Ausgabe des Arrays nach dem Löschen
foreach ($zahlen as $index => $wert) {
echo "Index $index: $wert<br>";
}
Ausgabe:
Index 0: 10
Index 1: 20
Index 3: 40
Index 4: 50
Hinweis: unset()
löscht nur das Element, indiziert aber das Array nicht neu. Das bedeutet, dass der Index 2 fehlt und die ursprüngliche Reihenfolge erhalten bleibt – es entsteht eine Lücke im Index.
Beispiel für unset() und array_values() bei einem indizierten Array
<?php
$zahlen = [10, 20, 30, 40, 50];
// Entferne das Element mit dem Index 2 (Wert: 30)
unset($zahlen[2]);
// Indizes neu ordnen
$zahlen = array_values($zahlen);
// Ausgabe des Arrays nach dem Löschen und Neuindizierung
foreach ($zahlen as $index => $wert) {
echo "Index $index: $wert<br>";
}
Ausgabe:
Index 0: 10
Index 1: 20
Index 2: 40
Index 3: 50
Hinweis: Mit array_values()
wird das Array neu indiziert, sodass keine Lücke mehr in den Indizes vorhanden ist.
Und so sieht dies in Python aus
Beispiel für unset() bei einem assoziativen Array
<?php
$person = [
"name" => "Mira",
"alter" => 31,
"stadt" => "Hamburg",
"beruf" => "Entwicklerin"
];
// Entferne die Elemente mit den Keys "alter" und "beruf"
unset($person["alter"], $person["beruf"]);
// Ausgabe des Arrays nach dem Löschen
foreach ($person as $key => $wert) {
echo "$key: $wert<br>";
}
Ausgabe:
name: Mira
stadt: Hamburg
Hinweis: Mit unset()
können mehrere Keys gleichzeitig entfernt werden, indem sie durch Kommas getrennt angegeben werden.