PHP Array und Schleifen
Ein Array speichert mehrere Werte, ähnlich einer 2 spaltigen Tabelle.
Beispiel
Als Beispiel könnten in einem Array 5 Werte eingetragen werden, diese können mittels ID wieder aufgerufen werden.
Hier ein einfaches Beispiel eines Arrays und deren gespeicherten Werte:
ID | Wert |
0 | wert1 |
1 | wert2 |
2 | wert3 |
3 | wert4 |
4 | wert5 |
Beim Aufruf der ID 1 würde bei Verwendung der Tabelle der Wert: "wert2" ausgegeben werden
Array erstellen
Ein Array zum angeführten Beispiel kann wie folgt erstellt werden:
$array = array("wert1", "wert2", "wert3", "wert4","wert5");
die Ausgabe des ersten Wertes (wert1) erfolgt dann beispielsweise mit $array[0]
Zudem ist es möglich den Index (0-4) selbst zu definieren, beispielweise könnten anstelle des Index auch Strings verwendet werden, die Schreibweise sieht dann folgendermaßen aus:
$array = [
"0" => "wert1",
"1" => "wert2",
"2" => "wert3",
"3" => "wert4",
"4" => "wert5",
];
echo $array[0];
explode
Mit dem Befehl explode kann ein String anhand eines Trennzeichens in ein Array geteilt werden.
Beispiel:
$array = explode ("x", "Text");
echo $array[0];
Ausgabe:
Te
print_r
Anzeigen eines Arrays:
Für eine schnelle Ausgabe eines Arrays kann der Befehlt print_r verwendet werden, siehe folgendes Beispiel parse_str
parse_str
parsed GET-Variablen in ein Array:
parse_str("GETVariable1=1&GETVariable2=2", $array);
echo print_r($array);
Ausgabe
Array | |
( | |
[GETVariable1] => 1 | |
[GETVariable2] => 2 | |
) |
for Schleife
eine for-Schleife kann dazu verwendet werden Aufgaben mehrfach auszuführen, hier um mit einer Ausgabe (echo) alle Werte des Arrays auszulesen:
for ($i=0; $i<count($array);$i++)
{
echo $array[$i];
}
count($array)
gibt hier die Anzahl der Einträge im Array zurück,
$i=0
... Startwert,
$i++
... bedeutet so viel wie $i=$i+1;
also bei jedem Durchlauf der Schleife soll $i um 1 erhöht werden.
Beim ersten Durchlauf der Schleife wird also der Befehl: echo $array[0];
ausgeführt,
beim 2ten Durchlauf: echo $array[1];
...
Ausgabe
Tet
Erklärung
x wurde in diesem Fall zum Trennen des Strings verwendet, vor dem Trennzeichen wird folgendes ausgegeben
$array[0]
gibt folgenden Text aus: Te
$array[1]
gibt folgenden Text aus t
Ergänzung
als Strings für das Trennen bzw. den Text der zu Trennen ist, können natürlich auch Variablen verwendet werden, hier nochmal das Beispiel mit Variablen:
$vartrennen="x";
$varText="Text";
$array = explode ($vartrennen, $varText);
Syntax für foreach key value
foreach ($array as $key => $value) {
echo $key.$value;
}
in_array
Testen ob ein Wert in einem Array vorkommt:
{{percentage}} % positiv