PHP-Arrays: Unterschied zwischen den Versionen

Aus Vokabulabor
Zur Navigation springen Zur Suche springen
Markierung: Zurückgesetzt
Zeile 21: Zeile 21:
$numbers = [ 2, 3, 5, 7, 11, 13, 17, 19, 23, 29];
$numbers = [ 2, 3, 5, 7, 11, 13, 17, 19, 23, 29];
$days = [ 'Mon', 'Die', 'Mit', 'Don', 'Fre', 'Sam', 'Son' ];
$days = [ 'Mon', 'Die', 'Mit', 'Don', 'Fre', 'Sam', 'Son' ];
$things = [33, 'Hello', [33, 44], true];
$things = [33, 'Hello', [33, 44], true]];
</syntaxhighlight>
</syntaxhighlight>
* Das erste Array $numbers enthält Ganzzahlen.
* Das erste Array $numbers enthält Ganzzahlen.

Version vom 11. November 2023, 20:20 Uhr

Links

Zielsetzung

Es soll der Umgang mit Arrays geübt werden.

Erklärung

Ein Array ist eine Liste von Elementen. In PHP können Listen beliebige Objekte enthalten.

Einfache Arrays

Beispiel

$numbers = [ 2, 3, 5, 7, 11, 13, 17, 19, 23, 29];
$days = [ 'Mon', 'Die', 'Mit', 'Don', 'Fre', 'Sam', 'Son' ];
$things = [33, 'Hello', [33, 44], true]];
  • Das erste Array $numbers enthält Ganzzahlen.
  • Das zweite Array $days enthält Strings (Zeichenketten).
  • Das dritte Array $things enthält eine Zahl, einen String und ein Array, das selber 2 Zahlen enthält, und einen Wahrheitswert true.

Zugriff auf einfache Arrays

Auf einfache Array kann mittels des Index zugegriffen werden: Der Index ist die Positionszahl des Elements in der Liste, beginnend mit 0.

echo "Index 0: ", $numbers[0], " | ", $days[0], "\n";
echo "Index 1: ", $numbers[1], " | ", $days[1], "\n";
echo "Index 2: ", $numbers[2], " | ", $days[2], "\n";

Zugriff per Schleife auf ein Arrays

Wir können alle Elemente eines Arrays abklappern:

foreach($numbers as $item){
  echo $item, " ";
}
echo "\n";
foreach($days as $day){
  echo $day, " ";
}
echo "\n";

Array ändern

array_push($numbers, 31);
$position = 3;
array_splice($numbers, $position, 0, -5);
echo $numbers, "\n";
  • Die erste Zeile fügt ein Element am Ende hinzu.
  • Die dritte Zeile fügt das Element -5 an der Position 3 (ab 0 gezählt) ein.

Assoziative Arrays

In PHP können Schlüssel-Wert-Paare gespeichert werden. Es wird einem Schlüssel ein Wert zugeordnet. In diesem Fall wird als Index keine Zahl verwendet, sondern ein beliebiger Schlüssel, zum Beispiel ein String.

Beispiel

$passwords = [ 'Alice' => 'TopSecret', 'Bob' => 'ForgetIt', 'Charly': 'NoNoNo' ];
$passwords['Diana'] = 'NobodyKnows';
unset($passwords['Diana']);
  • In der ersten Zeile wird ein Array mit mehreren Einträgen gefüllt.
  • In der zweiten Zeile wird ein Element hinzugefügt.
  • In der dritten Zeile wird das Element mit Schlüssel 'Diana' wieder entfernt.

Zugriff über den Schlüssel

echo "Alice: ", $passwords['Alice'], "\n";
echo "Bob: ", $passwords['Bob'], "\n";
echo "Charly: ", $passwords['Charly'], "\n";

Alle Elemente in einer Schleife ansprechen

Es könne alle Elemente mittels einer foreach-Schleife angesprochen werden:

foreach ($passwords as $key => $value){
  echo $key, ": ", $value, "\n";
}