loy webdesign | Kreis Gütersloh

Array assoziativ

Bei assoziativen Arrays werden die Variablen über eine eindeutige Bezeichnung innerhalb des Feldes angesprochen.

Der Schlüssel (sog. key) ist hier keine Nummer, wie beim numerisch indizierten Array, sondern eine Bezeichnung.

Ein assoziatives Array besteht aus einem Schlüssel und einen dazugehörigen Schlüsselwert.



Aufbau eines assoziativen Arrays

$myArray = array ( );

$myArray['key'] = "value";

Erzeugung des leeren Arrays $myArray und Zuweisung eines Schlüssels (key) mit zugehörigem Schlüsselwert (value).
Assoziative Arrays bestehen aus key/value Paaren.


Andere Schreibweise für die Wertzuweisung

$myArray = ('key' => "value");

Ausgabe eines Array Wertes

echo $myArray['key'];

Die Inhalte des Arrays werden über den Schlüssel (key) angesprochen und ausgegeben.

Die Schlüssel bestehen aus einen Namen, der sprechend ist. Daher wahrscheinlich auch der Name assoziatives Array.

Die Zuweisung der Werte (values) zu den Schlüsseln (keys) erfolgt durch den Zuweisungsopertor  =>.


Zuweisung weiterer Werte zum Array

$myArray['stadt'] = "Gütersloh";
$myArray['einwohnerzahl'] = 98000;

Diese Array Werte werden dem Array $myArray angehängt.

 

key / index value / wert
stadt Gütersloh
einwohnerzahl 98000

 

foreach Schleife

Array Werte mit der foreach ( ) Schleife ausgeben.


Die foreach Schleife ist eine Kontrollstruktur zum Auslesen von Array Werten. Mit ihr werden key und value Wert des Arrays ausgelesen.


Auslesen eines assoziativen Array 's

Es sollen 2 Städte und deren Einwohnerzahlen in einem assoziativen Array gespeichert und mittels foreach ( ) Schleife ausgegeben werden.


$staedte = ('Gütersloh' => 98000,
            'Bielefeld' => 326715); foreach ($staedte as $key => $value) {
  echo $key ."=> ". $value ."<br/>";
}

Die Ausgabe ist:

Gütersloh =>98000
Bielefeld =>326715

Mit der foreach Schleife wird das komplette Array durchlaufen. Es werden die Array Inhalte / Schlüssel mit den zugehörigem Wert ausgegeben.


Werte des assoziativen Arrays

key / index value / wert
Gütersloh 98000
Bielefeld 326715