Variable in for-Schleife
kollaps
- php
Hallo.
Also, ich habe ein HTML-Forumlar, welches viele Text-Inputs hat. Für jeden Tag (Dienstag bis Freitag) sind da 5 Eingabefelder (besser gesagt 15, aber die kann ich getrost außen vor lassen). Alle sind mit dem Namen di_1 (für das erste Feld am Dienstag) bis fr_5 (für das fünfte Feld am Freitag) gekennzeichnet.
Ich möchte diese Eingaben also mit "htmlentities()" in einer for()-Schleife behandeln. Beim Verbinden der Zählvariable mit dem Tageskürzel davor kommt aber ein Error:
for($i=1;$i<=5;$i++){
$di_$i = htmlentities($di_$i);
$mi_$i = htmlentities($mi_$i);
$do_$i = htmlentities($do_$i);
$fr_$i = htmlentities($fr_$i);
}
=> Parse error: syntax error, unexpected T_VARIABLE ...
Nun dachte ich mir, beim Verbinden zweier Variablen muss man doch "." verwenden. Also habe ich die Schleife folgendermaßen ausgebaut:
for($i=1;$i<=5;$i++){
$di_.$i = htmlentities($di_$i);
$mi_.$i = htmlentities($mi_$i);
$do_.$i = htmlentities($do_$i);
$fr_.$i = htmlentities($fr_$i);
}
Doch bei dieser Variante wird aber $di_.1 bis $fr_.5 ausgegeben.
Doch wie bekomme ich in einer for()-Schleife die Form $di_1 bis $fr_5 hin?
Ich bin dankbar um jede Antwort, die mir hilft ;)
euer kollaps
hi,
Doch wie bekomme ich in einer for()-Schleife die Form $di_1 bis $fr_5 hin?
stichwort variable variablen.
effektiver arbeitest du aber, wenn du gleich arrays verwendest.
wenn du mehrere formularelemente hast, und sie mit "name[]" benennst, bekommst du dann in PHP gleich ein array mit deren übergebenen werten zur verfügung gestellt.
gruß,
wahsaga
Doch wie bekomme ich in einer for()-Schleife die Form $di_1 bis $fr_5 hin?
effektiver arbeitest du aber, wenn du gleich arrays verwendest.
wenn du mehrere formularelemente hast, und sie mit "name[]" benennst, bekommst du dann in PHP gleich ein array mit deren übergebenen werten zur verfügung gestellt.
Zusatz:
Man kann den Key auch gleich festgelegen, dann ist er nicht von der Reihenfolge der Formularelemente abhängig. ("di[1]", "di[2]", .., "fr[5]")
Hallo,
Doch wie bekomme ich in einer for()-Schleife die Form $di_1 bis $fr_5 hin?
${'di'.$i}
...
${'fr'.$i}
Gruß
Lachgas