Was ist ein Array?
Sie befinden sich:
Home
>
Php
> Was ist ein Array?
Ein Array ist ein Datentyp, wo man beliebig viele Werte
abspeichern kann. Während in einer
Variable
immer ausschließlich ein einzelner Datentyp enthält,
kann in einer Arrayvariabel eine große Anzahl verschiedene
Werte enthalten. Das Verhältnis zwischen einer variabel und
ein Array kann man vergleichen mit zum Beispiel: das Fahrrad und
ein Auto oder ein Flugzeug.
Die Variabel ist ähnlich wie ein Fahrrad, das Fahrrad
kann nur eine einzelne Person befördern. Natürlich
kann das Fahrrad auch von unterschiedlichen Personen genutzt
werden. So ist es auch bei der Variabel, es kann bei einen
Script mehrere unterschiedliche Werte im Ablauf des Scriptes
einen Wert der Variabel zugeordnet werden. Es besteht aber immer
wieder nur die Möglichkeit, dass ausschließlich ein
Wert in der Variabel gespeichert werden kann.
Wenn man nun den Vergleich zu einem Array zieht, müsste
man das Array als Bus oder Flugzeug ansehen. Ein Bus oder
Flugzeug kann mehrere Personen transportieren. Ein Array kann
mehrere Werte über die Laufzeit eines Scriptes
transportieren. Um ein Array zu verwenden muss man einen so
genannten Schlüssel definieren, der einen gewissen Wert in
den einzelnen Array speichert. Wenn kein Schlüssel
definiert wurde in den Array, so wird automatisch von Null, um
eins hoch gezählt. Wenn man einen einzelnen Wert ausgeben
möchte, ist es erforderlich dass der Schlüssel, des
Array angegeben wird. Es besteht zusätzlich die
Möglichkeit ein Array in mehrere Ebenen zu Verschachteln.
Die Indizierung der einzelnen Felder kann entweder fortlaufend
von 0 - n geschehen, oder assoziativ. Eine allgemeine
Fehlerquelle, auf die auch erfahrene Programmierer immer wieder
hereinfallen, ist der Umstand das ein Array mit 10 Feldern mit
dem Index 0 beginnt, und mit 9 endet.
Genereller Ausgedrückt ein Array mit n Feldern hat als
maximalen Feldindex n-1. Diese Fehlerquelle kann man umgehen in
dem man assoziative Indizes vergibt, das bedeutet, dass der
Index selber ein Name oder ein Charakterstring sein kann.
Dabei ist zu beachten das selbst bei Verwendung dieser
Zuordnung, intern mit Feldnummern gearbeitet wird. Dies liegt im
Speichermodell begründet. Um den Inhalt eines Feldes bearbeiten
oder abfragen zu können wird ein Zeiger angelegt der auf das
ensprechende Feld des Arrays zeigt.
Ein solcher Pointer kann als Hilfsmittel angesehen werden um
mit Arrays arbeiten zu können. Da alle Elemente eines Arrays im
Speicher hintereinander liegen muss der Zeiger immer nur einen
Speicherblock verschoben werden um auf das nächste Element
zugreifen zu können, dabei wird immer vom ersten Element aus
inkrementiert.
Außerdem lassen sich Arrays einfacher mit Schleifen
verarbeiten. Folgendes Beispiel zeigt diese Vorteile :
<?php
$wert_eins = 1;
$wert_zwei = 2;
$wert_drei = 3;
$wert_vier = 4;
/*
* Um den Inhalt der vier Varibalen
* wiederzugeben muss nun jede erneut
* angespochen werden
*/
echo $wert_eins.'<br>';
echo $wert_zwei.'<br>';
echo $wert_drei.'<br>';
echo $wert_vier.'<br>';
?>
Ausgabe
1 2 3 4
Beispiel mit ein array() und foreach-Schleife
<?php
/*
* Ein Array vereinfacht das
* oben angeführte Beispiel erheblich
*/
$array =array(0 , 1 , 2 , 3);
foreach( $array as $ausgabe ){
echo $ausgabe.'<br>';
}
?>
Ausgabe
0 1 2 3
Beispiel mit ein mehrdimensionalen array() und einer for-Schleife
<?php
/*
* Alternative Zuweisung und Ausgabe der Felder
*/
$wert_neu =array();
$wert_neu[]= 0;
$wert_neu[]= 1;
$wert_neu[]= 2;
$wert_neu[]= 3;
for( $key = 0 ; $key < count($wert_neu) ; $key++){
echo $wert_neu[$key].'<br>';
}
?>
Ausgabe
0 1 2 3
Im vorhergehenden Beispiel, hatte ich mit einer
foreach()
sowie
for()
Schleife ein Array ausgegeben.
Wenn man eine Variable prüfen möchte, ob in dieser ein
Array enthalten ist, können sie den PHP Befehl
is_array()
verwenden.
Mit den PHP Befehl
list()
kann man ein Array mehreren Variablen zuordnen, um die
Weiterverarbeitung so einfach wie möglich zu gestalten.
weiter
Arrays sortieren
|