PHP Print Array

<?php
// Array mit den Werten 1 bis 5 erzeugen
$werte = range (1, 5);

// Print Array mit der Foreach-Schleife
foreach ($werte as $wert)
    echo $wert . ' ';
echo '<br>';

// Foreach-Schleife mit Key-Value-Paaren
foreach ($werte as $schluessel => $wert)
    echo 'werte[' . $schluessel . ']: ' . $wert . ' ';
echo '<br>';

// Array mit For-Schleife ausgeben
for ($i = 0; $i < count ($werte); $i++)
    echo 'werte[' . $i . ']: ' . $werte[$i] . ' ';
echo '<br>';

// Neues Array, welches nicht über einen Index
// addressiert werden kann
$werte2 = array (
        'Key1' => 'Wert 1',
        'Key2' => 'Wert 2',
        // Wert an Indexposition 0 definieren.
        0 => 'Wert 3',
        // Folgende Zeile überschreibt den letzten Wert, da
        // nicht zwischen den beiden Schlüsseln unterschieden wird.
        '0' => 'Wert 4',
        // Nächste Zeile nimmt automatisch den auf den zuletzt verwendeten
        // folgenden Indexschlüssel. Würde bislang kein Index 0 vergeben
        // worden sein, so stünde der Nächste Wert unter der Indexposition 0.
        'Wert 5',
        // Manuell vergebene Indexposition
        7 => 'Wert 6',
        // Und wieder automatische Vergabe des Folgeindex
        'Wert 7'
        );

// Versuch der Ausgabe per For-Schleife
for ($i = 0; $i < count ($werte2); $i++)
    // Wird folgendes If-Statement entfernt, so
    // führt dies zu Fehlern, da die Keys des Arrays
    // werte2 nicht auf normalen Indexwerten basieren.
    // Alternativ kann auch per isset-Funktion auf
    // Existenz des jeweiligen Array-Elements geprüft
    // werden.
    if (array_key_exists ($i, $werte2))
        echo 'werte2[' . $i . ']: ' . $werte2[$i] . ' ';
echo '<br>';

// So funktioniert es auch mit solchen Arrays
foreach ($werte2 as $schluessel => $wert)
    echo 'werte2[' . $schluessel . ']: ' . $wert . ' ';
echo '<br>';

// While-Schleife zur Ausgabe des Arrays
// Hier geschieht nichts, da der Array-Pointer nach der letzen
// Ausgabe nicht mit der reset-Funktion zurückgesetzt wurde.
// Es wird also nichts ausgegeben, da each keine Wertepaare mehr
// liefert.
while (list ($key, $value) = each ($werte2))
    echo "Key: $key; Value: $value<br>\n";

// Nocheinmal die selbe Schleife
// Diesmal wird aber vorher noch der Array-Pointer auf das erste
// Element im Array gesetzt.
reset ($werte2);
while (list ($key, $value) = each ($werte2))
    echo "Key: $key; Value: $value<br>\n";

// Ausgabe des Arrays per print_r
echo '<pre>';
print_r ($werte2);
echo '</pre>';
?>

1 2 3 4 5
werte[0]: 1 werte[1]: 2 werte[2]: 3 werte[3]: 4 werte[4]: 5
werte[0]: 1 werte[1]: 2 werte[2]: 3 werte[3]: 4 werte[4]: 5
werte2[0]: Wert 4 werte2[1]: Wert 5
werte2[Key1]: Wert 1 werte2[Key2]: Wert 2 werte2[0]: Wert 4 werte2[1]: Wert 5 werte2[7]: Wert 6 werte2[8]: Wert 7
Key: Key1; Value: Wert 1
Key: Key2; Value: Wert 2
Key: 0; Value: Wert 4
Key: 1; Value: Wert 5
Key: 7; Value: Wert 6
Key: 8; Value: Wert 7
Array
(
   [Key1] => Wert 1
   [Key2] => Wert 2
   [0] => Wert 4
   [1] => Wert 5
   [7] => Wert 6
   [8] => Wert 7
)

¬ Tutorials



¬ Insolvenzrecht