我真的陷入了这个愚蠢的问题中。我有一个动态表单变量test_nr,这个nr是动态的。然后我想在POST中以这样的方式捕获它:
$test = $_POST['test_'.$nr.''];但是不知道怎么回事,我想知道拼写错误在哪里。对我来说,这在语法上是正确的。这个问题导致while循环永远运行:
$in=1;
while($in<5){
$time_.$in=$_POST['zeit_'. $in .''];
$erfahrung_. $in = $_POST['berufserf_'. $in .''];
$in++;
}有什么想法吗?
发布于 2013-02-14 20:16:55
$time_.$in= ...是无效语法。您设置了$in = ...,然后将$time_连接到它,实际上只更改了$in。请改用数组:
$times = array();
$erfahrung = array();
for ($i = 1; $i <= 5; $i++) {
$times[$i] = $_POST['zeit_' . $i];
$erfahrung[$i] = $_POST['berufserf_'. $in];
}发布于 2013-02-14 20:18:07
如果你这样做了
$time_.$in = 'something';它会将$in设置为“something”,然后返回$time_和“something”的串联
正确的语法应该是:
$varName = 'time_' . $in;
$$varName = 'something';当然,在这里使用array会更简洁。
发布于 2013-02-14 20:21:39
$in=1;
while($in<5){
if(array_key_exist('zeit_'. $in, $_POST)){
$time_.$in=$_POST['zeit_'. $in .''];
$erfahrung_. $in = $_POST['berufserf_'. $in .''];
$in++;
}
}https://stackoverflow.com/questions/14874635
复制相似问题