Hallo Community,
ich habe ein Problem mit einer foreach-Schleife.
Ich habe einen multidimensionalen assoziativen Array $result.
Wenn ich mit den Array mit print_r ausgeben lasse, sind alle Daten am richtigen Ort, wenn ich allerdings anschließend mit einer foreach Schleife über den Array gehe, dann gibt mit der letzte Eintrag die vorletzen Werte aus. Das ist ein sehr merkwürdiges Verhalten, da ja alles am richtigen Platz zu sein scheint. Ist jemandem sowas schon untergekommen?
Ich kann leider meinen Code nicht posten, weil es sich um Unternehmenscode handelt und habe es auch noch nicht hinbekommen, den Fehler anderweitig zu reproduzieren. Nochmal kurz, was passiert:
wenn ich jetzt
mache, stimmt alles. Wenn ich anschließend foreach mache
sieht die Ausgabe aber so aus:
Als hotfix habe ich bisher nur
ich habe ein Problem mit einer foreach-Schleife.
Ich habe einen multidimensionalen assoziativen Array $result.
Wenn ich mit den Array mit print_r ausgeben lasse, sind alle Daten am richtigen Ort, wenn ich allerdings anschließend mit einer foreach Schleife über den Array gehe, dann gibt mit der letzte Eintrag die vorletzen Werte aus. Das ist ein sehr merkwürdiges Verhalten, da ja alles am richtigen Platz zu sein scheint. Ist jemandem sowas schon untergekommen?
Ich kann leider meinen Code nicht posten, weil es sich um Unternehmenscode handelt und habe es auch noch nicht hinbekommen, den Fehler anderweitig zu reproduzieren. Nochmal kurz, was passiert:
PHP-Code:
$result = array("t1" => array(1,2), "t2" => array(3,4), "t3" => array(5,6));
PHP-Code:
print_r($result)
PHP-Code:
foreach($result as $key => $val) {echo $key; print_r($val) }
t1 Array (1,2)
t2 Array (3,4)
t3 Array (3,4)
t2 Array (3,4)
t3 Array (3,4)
PHP-Code:
foreach(array_keys($result) as $key) {
$val = $result[$key];
//jetzt stimmt alles
}
Kommentar