Php 可变变量
如何在for循环中创建变量 这是一个循环:Php 可变变量,php,Php,如何在for循环中创建变量 这是一个循环: for ( $counter = 1; $counter <= $aantalZitjesBestellen; $counter ++) { } 等等 因此$\u POST的变量和内容应该是动态的。为了清晰起见,进行了扩展-您可以使用一行程序 for ( $counter = 1; $counter <= $aantalZitjesBestellen; $counter ++) { $varname = 'seat' . $co
for ( $counter = 1; $counter <= $aantalZitjesBestellen; $counter ++) {
}
等等
因此$\u POST的变量和内容应该是动态的。为了清晰起见,进行了扩展-您可以使用一行程序
for ( $counter = 1; $counter <= $aantalZitjesBestellen; $counter ++) {
$varname = 'seat' . $counter;
$$varname = $POST[$varname];
}
但是!你真的不应该这样做。如果您真的必须这样做,请查看内置的PHP方法——不过这也被认为是不好的做法
重新考虑你的问题,看看数组是否是解决方案,我想会的。这将使通过var_dump和迭代等方式进行检查变得更容易,并且不会污染全局变量空间
for ( $counter = 1; $counter <= $aantalZitjesBestellen; $counter ++) {
$name = 'seat' . $counter;
$$name = $_POST['seat' . $counter];
}
建议使用阵列,因为您可以更轻松地检查它们 首先,我会使用一个数组,除非我遗漏了什么。与使用数组相比,使用$seat1、$seat2等变量的实用性要小得多,也要麻烦得多 也就是说,使用以下语法:
for ( $counter = 1; $counter <= $aantalZitjesBestellen; $counter ++) {
$key = 'seat' . $counter;
$$key = $_POST[$key];
}
最后,PHP有一个内置函数,用于将数组键提取到符号表中:。如果您将extract与未经过滤的用户输入(例如$\u POST)一起使用,则会产生巨大的潜在安全问题,因此请谨慎使用。这也适用于:
for ( $counter = 1; $counter <= $aantalZitjesBestellen; $counter ++) {
${'seat' . $counter} = $_POST['seat' . $counter];
}
您可以使用,但我不建议您尝试这样做。为什么不创建一个数组?实际上您应该更改$\u POST变量中的值。您这样做是因为要更新正在显示的表单上的值吗?如果是这样的话,你可能想考虑使用JavaScript来解决这个问题。一个数组就太多了healthier@Pekka同意,但这回答了OP的问题。我将详细说明我的答案:使用extract会在应用程序中打开安全漏洞,因此强烈反对使用extract。我更喜欢这种语法,尽管我通常将其用于属性,而不是局部变量。
for ( $counter = 1; $counter <= $aantalZitjesBestellen; $counter ++) {
${'seat' . $counter} = $_POST['seat' . $counter];
}