Eine fortlaufende Variable in einer Schleife nutzen
Raffi
- php
0 Samuel Vogel0 Raffi
0 Tom
Hallo Leute
Stehe irgendwie an ;-)
Habe ein Formular mit folgenden Textfeldern:
funktion1
funktion2
funktion3
funktion4
etc.....
Dann wird die Save.php aufgerufen, die das ganze dann in die DB schreiben soll:
for ($i = 0; $i <= $anz; $i++)
{
$funktion = $$funktion.$i
print $funktion.'<br>';
}
Nun will ich folgendes erreichen:
bei jedem Schleifendurchlauf soll die $funktion um eins erhöht werden. Also beim ersten durchlauf:
$funktion = $funktion1;
beim zweiten:
$funktion = $funktion2;
etc.
Wie kann ich das machen?
Danke und gruss
Raffi
hallo,
Nimm den Code so wie du ihn geschrieben hast und er oben steht und dann läsuft alle.
Denn die Variable "$i" wird bei jedem durxhlauf der Schleife um 1 erhöht und dass ergibt dann "funktion1-2-3-4-5-6".
sam<,
Nein er läuft nicht....leider....
Über diesen umweg geht....geht das nicht irgendwie direkt?
for ($i = 0; $i <= $anz; $i++)
{
$test1 = 'funktion'.$i;
$funktion = $$test1;
Gruss
raffi
Hallo,
Über diesen umweg geht....geht das nicht irgendwie direkt?
for ($i = 0; $i <= $anz; $i++)
{
$test1 = 'funktion'.$i;
$funktion = $$test1;
Ja, genau das wollte ich vorschlagen.
Es ist auch logisch, dass nur das funktioniert.
So, wie Du es zuerst hattest:
$funktion = $$funktion.$i
bedeutet es:
Verknuepfe den String in $$funktion mit dem String $i
Was mit $$funktion gemeint ist, haengt also vom alten Wert von $funktion ab.
Beim ersten Durchgang ist $funktion wohl leer/undefiniert.
$$funktion ist dann also $ - mit anderen Worten: Keine gueltige Variable.
$funktion = $$funktion.$i
wuerde zu $0 - auch wieder keine gueltige Variable.
Anstatt der variablen Variablen wuerde ich viel eher einen Array nehmen.
Aber das ist halt Geschmackssache.
Gruesse,
Thomas
Hello,
for ($i = 0; $i <= $anz; $i++)
{
$funktion = "$funktion.$i";
print $funktion.'<br>';
}
Liebe Grüße aus http://www.braunschweig.de
Tom