加入 CodeIgniter 的查询生成器,return 1 行
Query Builder With Join CodeIgniter, return 1 row
大家好,我需要帮助理解 CodeIgniter,我是框架的新手
我在一个函数中有这个查询构建器
public function findLeader($where)
{
$this->db->select('me.EMP_FULL_NAME');
$this->db->from('tr_approval ta');
$this->db->join('m_employee me', 'me.EMP_ID = ta.EMP_ID');
$this->db->where($where);
//$namaLeader = $this->db->count_all_results();
$name = $this->db->get();
$name->row_array();
$name = $name['EMP_FULL_NAME'];
return $name;
}
以及调用函数的代码
$where = array(
'ta.RB_ID' => 'RB/210113/0001',
'ta.TR_APP_STATUS' => '0',
);
$getName = $this->Model_online->findLeader($where);
echo $getName;
但我遇到了这个错误
An uncaught Exception was encountered
Type: Error
Message: Cannot use object of type CI_DB_mysqli_result as array
Filename: C:\laragon\www\onlineform\application\models\Model_online.php
Line Number: 38
请帮忙,我试图从查询生成器中只获取 1 行,但我不能
由于 $name
最初是对象,而 row_array()
用于以数组形式检索单行,因此您必须将其保存在 $variable
中。您必须重新分配 $name
:
的值
$name = $this->db->get();
$name = $name->row_array();
$name = isset($name['EMP_FULL_NAME']) ? $name['EMP_FULL_NAME'] : 'Not Available';
或使用此方法:
$name = $this->db->get()->row_array();
$name = isset($name['EMP_FULL_NAME']) ? $name['EMP_FULL_NAME'] : 'Not Available';
大家好,我需要帮助理解 CodeIgniter,我是框架的新手 我在一个函数中有这个查询构建器
public function findLeader($where)
{
$this->db->select('me.EMP_FULL_NAME');
$this->db->from('tr_approval ta');
$this->db->join('m_employee me', 'me.EMP_ID = ta.EMP_ID');
$this->db->where($where);
//$namaLeader = $this->db->count_all_results();
$name = $this->db->get();
$name->row_array();
$name = $name['EMP_FULL_NAME'];
return $name;
}
以及调用函数的代码
$where = array(
'ta.RB_ID' => 'RB/210113/0001',
'ta.TR_APP_STATUS' => '0',
);
$getName = $this->Model_online->findLeader($where);
echo $getName;
但我遇到了这个错误
An uncaught Exception was encountered
Type: Error
Message: Cannot use object of type CI_DB_mysqli_result as array
Filename: C:\laragon\www\onlineform\application\models\Model_online.php
Line Number: 38
请帮忙,我试图从查询生成器中只获取 1 行,但我不能
由于 $name
最初是对象,而 row_array()
用于以数组形式检索单行,因此您必须将其保存在 $variable
中。您必须重新分配 $name
:
$name = $this->db->get();
$name = $name->row_array();
$name = isset($name['EMP_FULL_NAME']) ? $name['EMP_FULL_NAME'] : 'Not Available';
或使用此方法:
$name = $this->db->get()->row_array();
$name = isset($name['EMP_FULL_NAME']) ? $name['EMP_FULL_NAME'] : 'Not Available';