我有多个名为day1Name
,day2Name
,day3Name
的变量,依此类推。我还有exercise_11_Name
,exercise_12_name
等
我有很多这些,我希望在这些变量中保存的值取决于用户输入。
我不想为每一个人写$variableName = $_POST['name'
],因为这是很多很糟糕的做法。因此,我想使用for
循环,以便我的代码看起来更清晰。
我想要实现的是与此相似的东西:
for(i=0, i<10; i++)
{
$day[i+1]name = $_POST['day[i+1]name'];
$exercise_1[i+1]_name = $_POST['excName1[i]'];
}
我知道我写它的方式不会起作用。
P.S。我写[i+1]
的地方就是我需要的数字,例如,$day[i+1]name
应该在$day1name
时成为变量i=0
。在我写[i]
的地方,例如excName1[i]
,这是一个数组,我想在其中检索该特定索引的值。
我真的很感激这方面的帮助。
谢谢! =]
答案 0 :(得分:0)
创建一个名为$ day_name的数组,并将表单字段命名为day_name_1,day_name_2 etc
然后在你的循环中:
$ day_name [$ i + 1] = $ _POST [&#39; day_name _&#39; 。 ($ i + 1)]
对运动变量做同样的事情。 我假设它是php,所以你的循环变量必须是$ i,而不是我
答案 1 :(得分:0)
您要求的解决方案称为可变变量或变量扩展,并继续这样:
for($i=0; $i<10; $i++)
{
$d=$i+1;
${"day{$d}name"} = $_POST["day{$d}name"];
${"exercise_1{$d}_name"} = $_POST["excName1{$i}"];
}
但是我鼓励你看看&#34; array&#34;这就是@Bart上面建议的,这可能是组织数据的更好方式。