【发布时间】:2019-06-17 11:13:11
【问题描述】:
如果需要,我很乐意提供更多信息。这是精简版:
假设我有一个这样的数组:
$field_data[0][0] = array("user_name", "table", "table[0][user_name]", "select", "200px", 0, "names");
这个 $field_data 一直持续到 $field_data[3][15]。 从第一个元素到最后一个元素的结构是:字段名称、表、表[索引] [字段名称]、它们的输入类型(文本/日期/选择/..)、字段大小、索引和数据库中的数据名称,如果适用,则显示在选择器中。
然后,在php中:
$select['names'] = $db_lookup->getNamesSelect();
在前端,我尝试像这样动态填写这些内容:
foreach ($field_data[$i] as &$field) {
$field_name = $field[0];
$table = $field[1];
$table_field_name = $field[2];
$field_type = $field[3];
$field_size = $field[4];
$iteration = $field[5];
$selector = $field[6];
$clean = ($iteration >= 0 ? $clean[$table][$iteration][$field_name] : $clean[$table][$field_name]);
if ($field_type == 'text' || $field_type == 'date') {
....
} else if ($field_type == 'select') {
if($selector != null) {
**//This is where the problem is. This results in NULL:
// $select[$selector] (or $select[$field[6]])
// Meanwhile, $select['names'] works!**
}
}
【问题讨论】:
-
什么是
$select?编辑您的问题以提供一段完整的代码(minimal reproducible example),任何人都可以将其复制并粘贴到 PHP 中并让它运行。 (请注意,这并不意味着将整个 1500 行的源文件复制并粘贴到问题中!) -
如果
$select['names']有效而$select[$selector]无效,那么$selector的值可能不是您认为的$ar[$var]应该有效的值。 -
miken32,谢谢你的链接!我以后会这样做的!和如月,这听起来和我的问题一模一样,但我不知道下一步该做什么。或者如何找出类型..我想我在这里去另一个谷歌搜索兔子洞
-
echo $selector; -
为什么要等待未来?您可以编辑您的问题。