PHP – Teil 9: Arrays

Arrays sind eine praktische Methode, Daten zu speichern. Sie funktionieren wie Variablen, können jedoch mehrere Werte in einer Variable speichern. Wie das genau funktioniert schauen wir uns in diesem Artikel zusammen an.

Was ist ein Array?

Wir können uns eine Variable als eine Kiste vorstellen, in der wir etwas ablegen. Zur besseren Identifikation, wenn wir mehrere Kisten haben, beschriften wir diese auch noch mit einem aussagekräftigen Namen. Ein Array hingegen könnten wir uns nun als einen Schrank mit vielen Schubladen vorstellen. In jeder Schublade können wir etwas ablegen und durch eine Beschriftung der Schubladen können wir uns merken, wo was liegt. Dabei haben wir zwei Möglichkeiten für diese Beschriftung: wir können jeder Schublade einen Namen geben (das entspricht einem sogenannten assoziativen Array) oder wir nummerieren die Schubladen einfach durch (was man ein iteratives Array nennt). Der Name des Werts in einem Array nennt man entweder einen Key (für assoziative Arrays) oder einen Index (für iterative Arrays).

Wie kann ich ein Array anlegen?

Für das Anlegen eines Arrays gibt es die Funktion array(). Diese nimmt als Parameter die Werte, die in diesem Array gespeichert werden sollen. Hier ein einfaches Beispiel:

Werden keine Indizes explizit angegeben, werden diese automatisch vergeben. Hier ist zu beachten, dass das Zählen bei 0 beginnt. Der erste Wert in einem iterativen Array hat also den Index 0.

Wie greife ich auf die gespeicherten Werte zu?

Die wichtigsten Zeichen beim Arbeiten mit Arrays sind die eckigen Klammern [ und ]. Diese werden für den Zugriff benötigt – wann immer wir eckige Klammern im Code sehen (die sich nicht in einem String befinden) können wir davon ausgehen, dass wir es mit einem Array zu tun haben. Zwischen den Klammern steht beim Zugriff der Index / Key, auf den wir zugreifen wollen.

 

Wie füge ich einen neuen Wert hinzu?

Haben wir ein Array bereits angelegt und möchten einen bestimmten Wert verändern oder einen neuen Wert hinzufügen gibt es hierfür mehrere Möglichkeiten. Nehmen wir folgendes Beispielarray:

Wir können über den Key / Index einfach einen Wert überspeichern:

Auch neue Werte können so hinzugefügt werden:

Möchte ich ans Ende einen neuen Wert anfügen kann ich dies auch mithilfe von leeren Klammern tun:

Außerdem steht mir noch die Funktion array_push() zur Verfügung:

 

Assoziative Arrays

Die assoziativen Arrays unterscheiden sich von iterativen nur in dem Punkt, dass sie anstatt eines Integers als Index einen String benutzen. Dies kann für die Lesbarkeit besser sein und erleichtert es dem Programmierer, Zusammenhänge zu sehen. Außerdem ist hier die Reihenfolge nicht entscheidend. Hier einige Beispiele:

 

Wie kann ich Arrays durchlaufen?

Bei den Schleifen hatte ich ja angekündigt, dass wir hier noch Beispiele sehen, wie man Arrays mithilfe der foreach Schleife durchlaufen können, was eine sehr komfortable Möglichkeit darstellt.

Wie man sieht können wir auch den Key / Index des aktuellen Werts einfach rausfinden, indem wir den Schleifenkopf ein wenig verändern und eine zweite Variable einbauen. Auch diese ändert ihren Wert mit jedem Durchlauf der Schleife und ist nur innerhalb des Codeblocks der Schleife gültig.

Mehrdimensionale Arrays

Ein Wert in einem Array kann alles sein, was wir auch in einer normalen Variable speichern können, also auch ein weiteres Array. Sobald wir ein Array innerhalb eines anderen speichern erhalten wir ein sogenanntes mehrdimensionales Array. Um auf Werte darin zuzugreifen können wir einfach mehrere eckige Klammern hintereinander hängen. Beispiel:

 

Werte löschen

Möchte ich einen Wert wieder löschen kann ich dies mithilfe der unset() Funktion erreichen.

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.

*