我目前正在CodeIgniter中开发一个简单的论坛来处理PHP,我遇到了一个问题,虽然是基本的。
我的论坛索引由类别组成,每个类别都分配了几个论坛。我想显示每个类别的标题,然后返回下面的每个论坛。
目前我的MODEL返回数据:
function get_top_level_forums()
{
$this->db->select('id, title');
$this->db->from('forum_category');
$query = $this->db->get();
if ($query->num_rows() > 0)
{
$categories = $query->result();
foreach($categories as $category)
{
$this->db->select('id, title, description');
$this->db->from('forum');
$this->db->where('parent_id', 0);
$this->db->where('category_id', $category->id);
$query = $this->db->get();
$forums = $query->result();
}
return $categories;
}
}
我正在努力研究如何在单个数组中返回所有数据。我知道这是一个菜鸟问题,但我已经戳了一个小时,在隧道尽头看不到任何光线!
我知道如何使用CONTROLLER和VIEW中的数据。我只是坚持使用MODEL部分。
感谢。
:)
答案 0 :(得分:0)
将内部查询的结果放入循环内的数组中,然后返回该数组。
答案 1 :(得分:0)
而不是使用变量来存储结果,而是使用数组
$forums[] = $query->result();
完整示例:
$forums = array();
foreach($categories as $category)
{
$this->db->select('id, title, description');
$this->db->from('forum');
$this->db->where('parent_id', 0);
$this->db->where('category_id', $category->id);
$query = $this->db->get();
$forums[] = $query->result();
}
//$forums now contains all the query results
要访问您可以使用的变量
$forums[$forumindex][0] -> id;