我想做的是取变量名$ingreso
并在最后增加它以发送大量具有相同名称但最后具有不同数字的变量,$ingreso1
,{{ 1}}等,但我不知道如何正确连接它。
请帮助。
PHP代码:
ingreso2
但它不断返回 while ( $cont<= 15){
$sql = "INSERT INTO ingreso (vlr_ingreso, periodo_ingreso, proyecto_id_proyecto)
VALUES ('$ingreso".$cont."','$cont','$proyecto_id');";
$insert = mysqli_query($con, $sql);
}
而没有最后的数字。
我认为它发生的是$ingreso
在$cont
内容的末尾添加,而不是添加到变量本身
感谢您的帮助
答案 0 :(得分:1)
您应该可以使用complex string syntax({}
)。
while ( $cont<= 15){
$sql = "INSERT INTO ingreso (vlr_ingreso, periodo_ingreso, proyecto_id_proyecto)
VALUES ('${'ingreso'.$cont}','$cont','$proyecto_id');";
$insert = mysqli_query($con, $sql);
}
这样,${'ingreso'.$cont}
将在字符串中解析为$ingreso1
,$ingreso2
等。
(另外,正如AbraCadaver评论的那样,您还需要增加$cont
才能使其正常工作。)
如果您可以在代码中更早地进行更改,那么这将更容易,因此这些是数组键而不是单独的变量。例如,如果您有一个类似的数组:
$ingreso[1] = 'something';
$ingreso[2] = 'something else';
$ingreso[3] = 'etc.';
然后您可以改为使用foreach
循环:
foreach ($ingreso as $periodo => $vlr) {
$sql = "INSERT INTO ingreso (vlr_ingreso, periodo_ingreso, proyecto_id_proyecto)
VALUES ('$vlr','$periodo','$proyecto_id');";
}