我需要根据数组中的值填充下拉列表。这是我的代码。
假设用户的 id 为 1,2,3。然后必须选择与这些 id 对应的 table_group 并在下拉列表中显示。也不应该有任何重复值,就像在这种情况下 id 2 和 3 值 23 重复一样,在这种情况下,只会采用一个值。这里的 $table_id 是从 USERS TABLE 中获取的。
$mod = explode(',',$table_id);
$mod = array('1','2','3')
$res = array();
function addItems($items, $arr) {
foreach ($items as $value) {
if (!in_array($value, $arr)) {
$arr[] = $value;
}
}
return $arr;
}
$res = array();
for ($i = $mod[0]; $i <= end($mod); $i++) {
$query = $this->db->query("SELECT table_group FROM group where table_id = '$i'");
$row = $query->row();
$grp = $row->table_group;
$group = explode(',', $grp);
$res = addItems($group, $res);
}
return $res;
它实际上工作,但这里发生的错误是假设用户选择 1,2,4。在此仅必须选择 table_group 值 1,2 和 4。但是使用我的代码,选择了 1,2,3,4 的值。如果它的 3、4、5 或 2、3、4 等,那么代码就可以正常工作。我该如何解决这个错误?只需要纠正代码。