我正在使用以下代码
$this->db->select('moduleId,actionId');
$this->db->from('role');
$this->db->where('roleId',$session_data['role']);
$role=$this->db->get();
foreach ($role->result_array() as $rows)
{
$module=explode(":",$rows['moduleId']);
$this->db->select('moduleId,moduleName,moduleUrl');
$this->db->from('module');
$this->db->where_in('moduleId',$module);
$row=$this->db->get();
$result=$row->row_array();
}
但只会有一行。如何获取所有行,请帮助我
答案 0 :(得分:0)
要获取循环外的数据,您应该将变量数组设为$result[]
。所以,按照以下方式做:
$this->db->select('moduleId,actionId');
$this->db->from('role');
$this->db->where('roleId',$session_data['role']);
$role=$this->db->get();
foreach ($role->result_array() as $rows)
{
$module=explode(":",$rows['moduleId']);
$this->db->select('moduleId,moduleName,moduleUrl');
$this->db->from('module');
$this->db->where_in('moduleId',$module);
$row=$this->db->get();
$result[] = $row->row_array();
}