CodeIgniterのモデルにマルチ変数を返すコントローラ非オブジェクトのプロパティを取得しようとすると:
$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);}
この行の問題
'id_supervisorposition' = > $ get_supervisor-> idsprvisor、
'id_supervisorposition1' => $ get_supervisor-> idsprvisor1
'$ get_supervisor [] = $これを試してみてください - > ...'この行は、配列ではなく、オブジェクトを作成します。おそらく、あなただけの角括弧を削除することができます: '$ get_supervisor = $この - > ...' – Steve