我可以在PHP中使用生成的变量名吗?

Haa*_*bda 1 php

我有一堆我想要加在一起的值,这些值被输入到一个表单中.目前,该表格有11行,但未来可能会变大.我可以轻松地将所有值与以下内容一起添加:

$total = $value1 + $value2 + ... + $value11;
Run Code Online (Sandbox Code Playgroud)

我想要加在一起的所有值都来自一个HTML表单.我想避免使用javascript.

但是,我想避免手动操作,特别是如果它变得更大.这是我尝试使用循环将所有值添加到一起,但它返回一个"未定义的变量"错误(它只是一些测试代码来尝试这个想法):

<?php

$tempTotal = 0;

$pBalance1 = 5;
$pBalance2 = 5;
$pBalance3 = 5;

for  ($i = 1 ; $i <= 3 ; $i++){
    $tempTotal = $tempTotal + $pBalance.$i;
}


echo $tempTotal;

?>
Run Code Online (Sandbox Code Playgroud)

我想在PHP中做什么?

Las*_*sar 7

for  ($i = 1 ; $i <= 3 ; $i++){
    $varName = "pBalance".$i;
    $tempTotal += $$varName;
}
Run Code Online (Sandbox Code Playgroud)

这将做你想要的.但是你可能会考虑使用数组来做这种事情.


Kee*_*eth 7

我会使用@ unexist的解决方案..给输入字段名称如下:

<input name="myInput[]" />
<input name="myInput[]" />
<input name="myInput[]" />
...
Run Code Online (Sandbox Code Playgroud)

然后在你的PHP中得到这样的总和:

$total = array_sum($_REQUEST['myInput']);
Run Code Online (Sandbox Code Playgroud)

由于每个输入名称末尾的'[]',PHP将使$ _REQUEST ['myInput']自动成为一个数组.PHP的一个方便功能!