PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : mit forech 2 Arrays gleiczeitig durchlaufen?



inner.glow
02-12-2003, 18:04
Hi!

Ich habe 2 Arrays, die immer genau gleich lang sind.

Ich kann einen Array ganz einfach mit



foreach($_POST["irgendwas"] as $anzWK){
echo $anzWK . "<br />";
}


durchlaufen.

Wie kann ich 2 Arrays gleichzeitig durchlaufen? Ich brauche den Wert von z.B. den beiden 1. Werten gleichzeitig

Fabian

Gaert
02-12-2003, 18:12
Hallo!

Sofern es numerische Arrays sind, oder assoziative mit identischen Shlüsseln, ist das kein Problem:



foreach($_POST['irgendwas'] as $key=>$anzWK) {
echo $array2[$key] . "<br />";
echo $anzWK . "<br />";
}


Man kanns auch etwas umständlicher mit each machen -> http://php.net/each

wackeldackel
04-01-2006, 11:45
Hallo,

ich hol das Teil noch mal raus, da es im Kern genau das trifft, was ich brauche. Allerdings funktioniert das ja nur bei register_globals = ON.

Wie mache ich das ohne ???

Mein Problem:

Ich bekomme zwei Arrays

- txt_buchung
- txt_menge

Beide haben den gleichen Schlüssel.

Mit folgendem funktioniert es nur bei register_globals = On

if (is_array($txt_buchung))
{
reset($txt_buchung);
while (list($var) = each($txt_buchung))
{
echo $var . " " . $txt_buchung[$var] . " -> " . $txt_menge[$var] . "<br>";
}
}

Aber ich kann das nicht einstellen, also mache ich das eben so:
Dies funktioniert auch bis auf die Ausgabe nach "//das geht nicht"
Kann mir jemand erklären, wie ich diese Variable schreiben muss, damit das geht ???

if (isset ($HTTP_POST_VARS['txt_buchung']) && count ($HTTP_POST_VARS['txt_buchung']) > 0)
foreach ($HTTP_POST_VARS['txt_buchung'] AS $txt_buchung_array =>$wert)
{
echo $wert;
echo "--";
echo $txt_buchung_array;
echo "--";
// das geht nicht!! :confused:

echo $HTTP_POST_VARS['txt_menge[' . $wert . ']'];
echo "--";
echo "<br>";

}

Finde leider auch keine Lösung dazu, da meistens die obige Variante benutzt wird.

Gruss Klaus

wackeldackel
04-01-2006, 13:41
Hat sich erledigt !!!

siehe :


if (is_array($HTTP_POST_VARS['txt_buchung']))
{
reset($HTTP_POST_VARS['txt_buchung']);
while (list($var) = each($HTTP_POST_VARS['txt_buchung']))
{

echo $var . " " . $HTTP_POST_VARS['txt_buchung'][$var] . " -> "
. $HTTP_POST_VARS['txt_menge'][$var] . "<br>";
}
}

Gaert
04-01-2006, 15:09
Allerdings funktioniert das ja nur bei register_globals = ON.

Was hat mein Beispiel mit register_globals = 0n zu tun... wenn schon dann register_globals = 0ff, aber der Kern der Frage liegt ja wohl woanders.