PHP Schnellstart – Wichtige Array-Funktionen für den Alltag

In der letzten Lektion hast du die wichtigsten Grundlagen zu Arrays gelernt. Nachfolgend zeige ich dir viele nützliche Array-Funktionen.

Hinweis: Du musst die Array-Funktionen nicht alle auswendig kennen. Es ist jedoch sinnvoll, diese einmal selbst ausprobiert zu haben. Die Funktionsweise ist nach etwas Übung sehr einfach.

PHP liefert gleich eine ganze Reihe von Funktionen mit, mit deren Hilfe sich der Zugriff auf Arrays erheblich vereinfacht. Eine Auswahl davon stellen wir Dir hier vor.

array_diff()

Zwei oder mehr Arrays miteinander vergleichen. Gibt die Werte zurück, die in keinem der Arrays enthalten sind. Hier enthält das Array $unterschiede nur ein Element -- den Wert "blau" mit dem Index 0.


$farben1 = ["grün", "rot", "blau", "rot"];
$farben2 = ["grün", "gelb", "rot"];
$unterschiede = array_diff($farben1, $farben2);

array_key_exists() und key_exists()

Prüft, ob der angegebene Schlüssel im Array existiert, und liefert dann den Wahrheitswert True zurück. Im nachfolgenden Beispiel ist die Bedingung erfüllt und die Erfolgsmeldung wird ausgegeben.


$farben = [
"rot" => "FF0000",
"blau" => "0000FF"
];
if (array_key_exists("rot", $farben)) {
echo "Der Schlüssel rot ist in dem Array vorhanden.";
}

array_keys()

Liefert alle Schlüssel eines Arrays als Array zurück. Gegenstück zur Funktion array_values(). Im nachfolgenden Beispiel ist das Ergebnis ein Array namens $schluessel mit den drei Werten "KI", "UL" und "K".


$liste = [
"KI" => "Kiel",
"UL" => "Ulm",
"K" => "Köln"
];
$schluessel = array_keys($liste);

array_pop()

Diese Funktion liefert und entfernt das letzte Element eines Arrays. Gegenstück zur Funktion array_push(). Im nachfolgenden Beispiel enthält die Variable $stadt den Wert "Rostock" und das Array $stadtliste ist um ein Element kleiner.


$stadtliste = [
"Kiel",
"Hamburg",
"Rostock"
];
$stadt = array_pop($stadtliste);

array_push()

Fügt ein oder mehr Elemente an das Ende eines Arrays an. Die Funktion ist identisch zu $liste[] = $wert;.


$stadtliste = [
"Kiel",
"Hamburg",
"Rostock"
];
array_push($stadtliste, "Stralsund");

array_reverse()

Diese Funktion liefert ein Array mit umgekehrter Reihenfolge der Elemente. Das Array $neueStadtliste enthält nun die Elemente "Rostock" (Index 0), "Hamburg" (Index 1) und "Kiel" (Index 2).


$stadtliste = [
"Kiel",
"Hamburg",
"Rostock"
];
$neueStadtliste = array_reverse($stadtliste);

array_search()

Diese Funktion durchsucht ein Array nach einem Wert und liefert bei Erfolg den zugehörigen Wert des Schlüssel zurück. Im nachfolgenden Beispiel ist das "KI", da der Eintrag "Kiel" über diesen Schlüssel referenziert wird.


$liste = [
"KI" => "Kiel",
"UL" => "Ulm",
"K" => "Köln"
];
$schluessel = array_search("Kiel", $liste);

array_shift()

Liefert und entfernt das erste Element eines Arrays. Gleichzeitig wird das Array um das erste Element verkürzt.


$einzelwerte = [ 2, 5, 6 ];
$wert = array_shift($einzelwerte);

Nach der Ausführung des Codes beinhaltet die Variable $wert den Wert 2 und das Array $einzelwerte besteht nur noch aus den beiden Elementen 5 und 6.

array_sum()

Liefert die Summe der Werte in einem Array. Die Variable $summe enthält nun den Wert 22.


$einzelwerte = [ 2, 5, 6, 1, 8 ];
$summe = array_sum($einzelwerte);

array_unique()

Diese Funktion entfernt alle doppelten Werte aus einem Array. Im nachfolgenden Beispiel wird damit der doppelt vorkommende "Sonntag" aus der Liste entfernt.


$wochenende = [
"Sonnabend",
"Sonntag",
"Sonntag"
];
$wochenende = array_unique($wochenende);

array_values()

Liefert alle Werte eines Arrays. Gegenstück zur Funktion array_keys(). Ergebnis ist ein Array mit allen Werten und numerischen Schlüsseln, die bei 0 für das erste Element beginnen. Im nachfolgenden Beispiel sind das die vier Werte "Januar", 3, "Fabian" und 145 und die Schlüssel 0 bis 3.


$liste = [
"Januar",
3,
"Fabian",
3 => 145
];
$werte = array_values($liste);

asort() und arsort()

Mit diesen beiden Funktionen sortierst Du ein Array -- asort() für aufsteigend und arsort() für absteigend. Beide Funktionen behalten dabei die Index-Assoziation der Elemente bei.


$namen = [
1 => "Harald",
2 => "Klaus",
7 => "Andreas"
];
$sortierteNamen = asort($namen);

Im Ergebnis hat das Array $sortierteNamen diesen Inhalt:


$sortierteNamen = [
7 => "Andreas",
1 => "Harald",
2 => "Klaus"
];

count()

Damit zählst Du die Elemente in einem Array. Nach Ausführung des Programmcodes enthält die Variable $anzahl den Wert 4.


$werte = [
"Januar",
3,
"Fabian",
3 => 145
];
$anzahl = count($werte);

in_array()

Diese Funktion überprüft, ob der angegebene Wert in dem Array existiert. in_array() benötigt zwei Parameter -- den Wert und das Array, in welchem zu suchen ist.


$hansestadt = [
"Lübeck",
"Hamburg",
"Rostock"
];
if in_array("Hamburg", $hansestadt) {
echo "Hamburg ist in der Liste der Hansestädte enthalten.";
};

Wird der Programmcode ausgeführt, ist die Bedingung erfüllt, da sich "Hamburg" in der Liste befindet. Somit wird danach die Erfolgsmeldung ausgegeben.

ksort() und krsort()

Hiermit sortierst Du ein Array anhand der Schlüssel. Die Funktion ksort() sortiert aufsteigend und die Funktion krsort() absteigend.


$namen = [
7 => "Andreas",
1 => "Harald",
2 => "Klaus"
];
$sortierteNamen = ksort($namen);

Nach Ausführung des Codes enthält das Array die Elemente "Harald" (Index 1), "Klaus" (Index 2) und "Andreas" (Index 7).

Deine Aufgabe - Jetzt bist du gefragt:

Im untenstehenden Editor kannst du die hier aufgeführten Array-Funktionen ausprobieren.

Deine Aufgabe ist es mindestens drei der hier aufgeführten Array-Funktionen zu testen. Kopiere die fertigen Codes und füge sie in den Editor ein.

Tipp: Du kannst die Ausgabe der jeweiligen Array-Werte mit dem echo-Befehl überprüfen.

Code-Editor:

Zusammenfassung zu Array-Funktionen

Das war eine ausführliche Lektion zu Array-Funktionen in PHP. Jetzt hast du ein sehr gutes Wissen zu Arrays und den von PHP bereitgestellten Möglichkeiten, diese zu verwenden. Arrays sind ein weiterer Grundbaustein der Programmierung. Sie werden dich immer wieder beim Programmieren unterstützen, mit komplexen Datenstrukturen umzugehen.

An dieser Stelle bist du schon fast mit dem 2. Modul fertig. In der nächsten Lektion startet die abschließende Coding-Challenge Nr.2. Wir sehen uns gleich!