Codeigniter ActiveRecord未显示所有结果

时间:2015-09-24 13:13:44

标签: php codeigniter activerecord

所以我试图从数据库中提取所有用户的所有名称,但我只得到一个,在这种情况下是它在表中找到的第一个结果。这是我尝试的代码:

public function getAllUsers(){

    $query = $this->db->get('user');
    $result = $query->result();

    foreach ($result as $record)
    {
       return $record->name;
    }

}

我已经尝试了很多信念,但无济于事。我使用var_dump在视图上显示它。我已经尝试过将它循环到vewi中,但没有任何反应。有什么帮助吗?

编辑[已解决] :在这种情况下,foreach将循环并带来所有记录但是一旦完成所有数据都会丢失,所以为了保存数据,我是建议先创建一个空数组,然后将数据设置为循环内的数组,然后在循环完成后返回该数组。谢谢!

2 个答案:

答案 0 :(得分:4)

你的foreach循环只运行一次并返回数据。您需要将数据存储到数组和结果

$data=array(); // define empty array
foreach ($result as $record)
    {
       $data[]= $record->name;// assign name to array
    }
    return $data;// return data

答案 1 :(得分:2)

试试这个:

public function getAllUsers(){
    $query = $this->db->get('user');
    $result = $query->result();
    $name = array();
    foreach ($result as $record)
    {
       $name[] =  $record->name;
    }
    return $name ; 

}