PHP取消设置除我所需之外的多个数组

PHP取消设置除我所需之外的多个数组,php,codeigniter,codeigniter-3,Php,Codeigniter,Codeigniter 3,出于安全原因,我想取消设置所有我不想在下拉列表中显示的项目,但我需要的项目除外 这是我的控制器的代码 $options[''] = '--Please Select--'; $query = $this->departments->get('department_name'); foreach ($query->result() as $row) { $options[$row->id] = $row->department_name; } retu

出于安全原因,我想取消设置所有我不想在下拉列表中显示的项目,但我需要的项目除外

这是我的控制器的代码

$options['']    = '--Please Select--';
$query = $this->departments->get('department_name');
foreach ($query->result() as $row) {
    $options[$row->id] = $row->department_name;
}

return $options;
这就是我的观点

echo form_dropdown('department_id', $options, '','');
我不想那个管理员改变他/她的部门。只有超级管理员可以改变这一点。因此,我需要取消设置除他/她所在部门之外的所有选项

例如,当前管理员
部门id=5
。那么如何取消设置所有其他选项
(1,2,3,4,6,7)


提前感谢

您只需在控制器中编写代码,即可删除该记录

->检查当前用户角色是否为超级管理员

->若角色是超级管理员,那个么你们可以找到当前的管理部门

->并编写查询,从数据库中查找不等于管理员部门id的数据


->和删除所有数据并返回新数据。

您可以在创建选项变量时添加禁用属性

为此,您必须检查用户类型,并在此基础上创建选项列表,当用户类型不是超级管理员时,您可以在部门id为5时添加选定和禁用的属性

为此,我与大家分享了一个例子

echo form_dropdown('department_id', $options, 'default', 'disabled="disabled"');

我希望它能帮助您。

我想最明显的答案是不要在数组中包含这些选项。$this->departments->get('department\u name')->where('id',5)