控制器
$this->load->model('position_model','m_position');
$get_supervisor[] = $this->m_position->get_supervisor($id_position);
$get_position=$this->m_position->get_position($id_position);
$data1 = array(
'id_position' => $id_position,
'name_position' =>$get_position->position_name,
'id_supervisorposition'=>$get_supervisor->idsprvisor,
'id_supervisorposition1' =>$get_supervisor->idsprvisor1
);
$this->position->ins_employee_position($data1);
模型
public function get_supervisor($position_id){
$position=$this->get_position($position_id);
$unitid=$position->unitid;
$grade_id = $position->grade_id;
$idsprvisor = $position_id; //default value;
$idsprvisor1 = $position_id; //default value;
$get = $this->get_unit_by_unitid($unitid)->result();
$cucok=0;
foreach ($get as $unit) {
if ($unit->grade_id<=$grade_id) {
switch ($cucok){
case "0":
$idsprvisor=$unit->positionid;
break;
case "1":
$idsprvisor1=$unit->positionid;
break;
}
$cucok++;
}
return array('idsprvisor'=>$idsprvisor,'idsprvisor1'=>$idsprvisor1);}
这一行的问题
&#39; id_supervisorposition&#39; =&GT; $ get_supervisor-&GT; idsprvisor,
&#39; id_supervisorposition1&#39; =&GT; $ get_supervisor-&GT; idsprvisor1
答案 0 :(得分:0)
您正在从模型函数(return array('idsprvisor'=>$idsprvisor,'idsprvisor1'=>$idsprvisor1);
)返回一个数组。您无法像访问对象中的属性一样访问数组中的元素。
检查以下行
'id_supervisorposition' => $get_supervisor->idsprvisor,
'id_supervisorposition1' => $get_supervisor->idsprvisor1,
如果您为某个对象分配$get_supervisor
,则不会收到此错误,但由于$get_supervisor
实际上是一个数组,因此您无法以这种方式访问它。
试试这个
'id_supervisorposition' => $get_supervisor['idsprvisor'],
'id_supervisorposition1' => $get_supervisor['idsprvisor1'],