如何在CodeIgniter中“while fetch assoc”?

时间:2013-01-18 20:14:27

标签: php mysql codeigniter

什么是等效的make codeigniter获取和写入所有变量...

这就是我通常会做的事情:

$get = mysql_query("SELECT * FROM aTable");

while($row = mysql_fetch_assoc) {
echo $row['someContent'];
}

我如何在codeigniter中执行此操作?

2 个答案:

答案 0 :(得分:9)

使用->query()或“有效记录”类“->get()运行查询后,请使用result_array方法。

$query = $this->db->query("SELECT * FROM aTable");

foreach($query->result_array() as $row){
    echo $row['someContent'];
}

文档:https://www.codeigniter.com/user_guide/database/results.html

答案 1 :(得分:0)

在CodeIgniter 3中,更好的方法是unbuffered_row

$query = $this->db->query("SELECT * FROM aTable");

while($row = $this->db->unbuffered_row('array')) {
    echo $row['someContent'];
}

注意:使用此方法从数据库中检索大型集合将比@Rocket Hazmat版本更有效。这是因为逐行检索数据,而$query->result_array将所有内容存储在内存中。