While-Schleife bei Array

#1
Guten Tag,

ich hätte nur eine kleine Frage bezüglich der While-Schleife.

Beispielsweise kann man bei einer mysqli Abfrage folgendes schreiben:
PHP:
while ($row = mysqli_fetch_assoc($var)){
  echo $row["beispiel"];
}
Hiermit könnte man alle Werte der Spalte "bespiel" ausgeben.
Ich würde gerne diese Methode beibehalten (Funktion in While-Schleife ohne Zähler-Variable).
Auf ein mehrdimensionales Array anwenden.
Beispiel:
PHP:
Array
(
    [0] => Array
        (
            [beispiel] => Test
        )

    [1] => Array
        (
            [beispiel] => Test2
        )

)
Diesen Code könnte man super in eine For-Schleife packen.
Ist es jedoch möglich das man es in der While-Schleife macht, wie bei mysqli_fetch_assoc()

Vielleicht weiß ja jemand eine Lösung...

Mfg
 

Yaslaw

n/a
Moderator
#2
While-Schleife nicht. Da du keinen Zeiger hast, der bei Aufrufen der Funktion um eins nach vorne geschoben wird. Du könntest eine Iteratorklasse für dein Array machen.
Aber Einfacher arbeitest du mit foreach()
PHP:
<?php
$data = array(
    Array(
        'beispiel' => 'Test',
        'id' => 123
    ),
    array(
        'beispiel' => 'Test2',
        'id' => 543
        )
    );

foreach($data as $rownr => $row){
   foreach($row as $key => $value){
       echo "#{$rownr} {$key}: {$value}<br/>";
   }
 
}
?>
Code:
#0 beispiel: Test
#0 id: 123
#1 beispiel: Test2
#1 id: 543
 
Zuletzt bearbeitet: