在变量名称上放置一个计数器
Put a counter on the name of a variable
我想做的是获取变量名 $ingreso
并在末尾递增它以发送许多具有相同名称但末尾编号不同的变量,$ingreso1
, ingreso2
等,但我不知道如何正确连接它。
请帮助。
PHP代码:
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
被添加到 $ingreso
内容的末尾,而不是变量本身
感谢您的帮助
您应该可以使用 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');";
}
我想做的是获取变量名 $ingreso
并在末尾递增它以发送许多具有相同名称但末尾编号不同的变量,$ingreso1
, ingreso2
等,但我不知道如何正确连接它。
请帮助。
PHP代码:
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
被添加到 $ingreso
内容的末尾,而不是变量本身
感谢您的帮助
您应该可以使用 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');";
}