【发布时间】:2018-11-10 04:06:59
【问题描述】:
我以前做过这个没有问题,但现在似乎无法让它工作。从一个数组中,我想创建值的变量,然后填充任何已由表单提交的变量,或者如果它们尚未提交,则为它们分配一个空值。
$Fields 数组,其中包含数据库列名并从查询中自动生成,如下所示:
Array
(
[0] => ID
[1] => Name
[2] => EMail
[3] => Message
[4] => Site
)
PHP 代码是:
// Create variables from table columns and populate on post
foreach ($Fields as $key => $val) :
if (isset($_POST) && isset($_POST[$val])) :
$$key = $val;
$val = $_POST[$val];
else :
$$key = $val;
$val = "";
endif;
endforeach;
【问题讨论】:
-
在你的 foreach 循环中,$key 是一个数字。你不能用它来命名变量。
-
我想了很多,但是用 $$val 替换 $$keys 仍然会出现其他地方使用的变量丢失的错误。