所以我有一个变量,我想基于一些提交的表单数据设置。在表单上,我有一组字段,用户可以增加这些字段的数量(也就是说,他们可以添加更多相同类型的字段),因此我需要设置处理提交数据的脚本来适应这一点。
到目前为止,这是我所拥有的:
while ($i <= $totalproducts) {
$product.$i = $_POST['product'.$i];
$i++;
}
$totalproducts保存字段的总数。例如,假设我有3个项目,下面是我想从代码中获取的内容:
$product1 = $_POST['product1'];
$product2 = $_POST['product2'];
$product3 = $_POST['product3'];
我相信我已经很接近了,只是不能把它们放在一起…
你可以使用变量variable:
while ($i <= $totalproducts) {
$variable = 'product' . $i;
$$variable = $_POST['product' . $i];
$i++;
}
但更好的是使用array:
$products = array();
while ($i <= $totalproducts) {
$products[$i] = $_POST['product' . $i];
$i++;
}
你需要这样做
${$product.$i} = $_POST['product'.$i];
但是我觉得这是很糟糕的风格。为什么不用数组呢?这正是数组的作用。
数组也有很多优点。想知道有多少种产品吗?简单,只要count()
。想把产品传递给另一个函数?很简单,只需传递数组而不是未知数量的变量,等等