Zweidimensionales Array auslesen

tklustig

Erfahrenes Mitglied
Hallo Leute, folgender Code funktioniert soweit. Allerdings scheitere ich beim letzten Versuch, das Array mittels Verwendung beider Schleifentypen auszulesen. Kann mir jemand erläutern,woran das liegt?
PHP:
        <?php
        $schachbrett = array();
        for ($i = 65; $i <= 72; $i++) {
            for ($j = 49; $j <= 57; $j++) {
                $schachbrett[$i - 65][$j - 49] = chr($i) . chr($j);
                $ZeilenAnzahl=$i-65+1;
                $SpaltenAnzahl=$j-49+1;
            }
        }
        for ($i = 0; $i <$ZeilenAnzahl; $i++) {
            for ($j = 0; $j < $SpaltenAnzahl; $j++) {
                echo $schachbrett[$i][$j] . ",";
            }
        }
        echo"<p>" . $schachbrett[0][7] . "<br></p>"; // Ausgabe => A8
        echo"<p>" . $schachbrett[5][3] . "<br></p>"; // Ausgabe => F4
        ?>       
        <p> Zweidimensionales Array mit Key in PHP</p>
        <?php
        $feld[0][0] = array("Feld" => "A1", "Farbe" => "schwarz");
        $feld[0][1] = array("Feld" => "A2", "Farbe" => "weiß");
        $feld[0][2] = array("Feld" => "A3", "Farbe" => "schwarz");
        $feld[0][3] = array("Feld" => "A4", "Farbe" => "weiß");
        echo $feld[0][3]["Farbe"] . "<br>"; // Ausgabe => schwarz
        foreach ($feld as $feld_) {
            foreach ($feld_ as $feld__) {
                foreach ($feld__ as $ausgabe => $value) {
                    echo $ausgabe . "=> " . $value . "<br/>";
                }
            }
        }
        ?>
 
Zuletzt bearbeitet:
Der letzte Teil funktioniert bei mir einwandfrei und liefert die Ausgabe:
weiß
Feld=> A1
Farbe=> schwarz
Feld=> A2
Farbe=> weiß
Feld=> A3
Farbe=> schwarz
Feld=> A4
Farbe=> weiß
was IMO richtig ist. Was, meinst du denn, ist fehlerhaft?
 
Sorry. Ich hatte nicht den ganzen Code gepostet. Hier ist das fehlende Codefragment. es läuft nur,wenn ich mittels error_reporting(1) die Fehlerausgabe verändere.
PHP:
        ?>
        <p> Zweidimensionales Array mit Key  unter Verwendung beider Schleifentypen in PHP</p>
        <?php
        for ($i = 0; $i < $ZeilenAnzahl; $i++) {
            for ($j = 0; $j < $SpaltenAnzahl; $j++) {
                foreach ($feld[$i][$j] as $ausgabe => $value) {
                    echo $ausgabe . "=> " . $value . "<br/>";
                }
            }
        }
        ?>
 
Meinst du das?

PHP:
foreach($array as $first_key => $first_value)
{
    foreach($first_value as $seconde_key => $second_value)
    {
        echo $first_key;
        echo $first_value;
        echo $second_key;
        echo $second_value;
   }
}
 
es läuft nur,wenn ich mittels error_reporting(1) die Fehlerausgabe verändere.
Das liegt daran, dass Du in $feld nur vier Einträge hast, während die Variablen $Zeilenanzahl und $Spaltenanzahl für das ganze Brett gelten und Du somit die Grenzen des Arrays überschreitest. Oder ist da auch etwas unvollständig?
 

Neue Beiträge

Zurück