$Feldvariable = array (Schlüssel1 => Wertl,Schlüssel2 => Wert2, ...) ;
**Beispiel:**
$hauptstaedte = array("Schweiz" => "Bern", "Frankreich" => "Paris");
* Die array ()-Anweisung beginnt mit dem reservierten Wort array.
* Der Variablen werden die einzelnen Wertpaare, bestehend aus Schlüsselwort (Key) und Wert (Value), übergeben, indem sie durch Kommata voneinander getrennt angegeben werden.
* Die Indizierung der einzelnen Werte erfolgt über die Angabe eines Schlüssels in Form einer beliebigen, eindeutigen Zeichenkette oder eindeutiger Integerwerte. Die Zuweisung erfolgt über **=>**.
\\
==== Auf assoziative Felder zugreifen ====
Beim Zugriff auf einen Wert des Feldes kann der Schlüsselwert direkt angegeben oder als Variable übergeben werden:
^ ^Ergebnis^
|
"Bern",
"Frankreich" => "Paris",
"Deutschland" => "Berlin",
"Österreich" => "Wien");
$k = "Österreich";
echo "Hauptstadt von $k: " . $hauptstaedte[$k] ."
";
echo "Die Hauptstadt von $k ist " .$hauptstaedte["Österreich"];
?>
* Das assoziative Feld wird über die ''array()''-Funktion und die Zuweisung der Schlüssel sowie Feldinhalte angelegt.
* Der Variablen
foreach($Feld as $wert) Anweisung;
foreach($Feld as $index => $wert) Anweisung;
* Die Funktion ''foreach()'' erwartet die Angabe des assoziativen Feldes, dessen Elemente durchlaufen werden sollen.
* In der ersten Variante werden mithilfe von ''foreach'' bei jedem Schleifendurchlauf der Variablen (%%$wert%%) nacheinander die Werte der Arrayelemente zugewiesen.
* Mithilfe der zweiten Variante können Sie zusätzlich den Index des Arrayelements auslesen und der Variablen %%$index%% zuweisen, was beispielsweise bei assoziativen Feldern hilfreich ist.
**Beispiel: foreach.php**\\
Verschiedene Länder der Welt und deren Hauptstädte werden in einem assoziativen Feld gespeichert. Zur Ausgabe sollen das Land ( = Schlüssel) und die dazugehörige Hauptstadt ( = Wert) in einer Tabelle angezeigt werden:
"Bern",
"Frankreich" => "Paris",
"Deutschland" => "Berlin");
$hauptstaedte["Polen"] = "Warschau";
$hauptstaedte["Italien"] = "Rom";
$hauptstaedte["Österreich"] = "Wien";
echo "";
echo "Land " ;
echo "Hauptstadt " ;
foreach($hauptstaedte as $land=>$stadt)
{echo "$land $stadt " ;
}
echo "
";
?>
* Das assoziative Feld %%$hauptstaedte%% wird über die ''array''-Anweisung gefüllt.
* Dem assoziativen Feld %%$hauptstaedt%%e werden weitere Elemente hinzugefügt.
* Der Tabellenkopf wird erstellt.
* Mithilfe einer foreach-Schleife können Sie auf jedes Element des Feldes zugreifen. Die Schleife wird so lange durchgeführt, bis alle Elemente des Feldes angesprochen wurden. In jedem Schleifendurchlauf wird der Variablen ''$land'' der jeweilige Schlüsselwert und der Variablen ''$stadt'' der Wert des Feldes an der durch das Schlüsselwort festgelegten Position zugeordnet.
* Die Werte werden in die Tabelle eintragen und über den Ausgabebefehl echo am Bildschirm ausgegeben.
{{inf:inf7b_201011:php:php5-s48.jpg?400|Ausgabe von Werten eines assoziativen Arrays}}