Codeigniter:在Active Record中生成数组而不是对象

时间:2016-02-04 11:30:35

标签: php codeigniter activerecord

我希望Codeigniter在活动记录中生成数组结果,就像mysql_fetch_array()在标准PHP中一样。

我们只是说,我们在mysql数据库中有这个表,叫做学生。

+-----+------+
| id  | name |
+-----+------+
|  1  | Elto |
|  2  | John |
+------------+

这是条件。
我以分开的方式生成查询。它就像:

$this->db->select('id, name');
$this->db->order_by('name', 'asc');
$q = $this->db->get('students');
$r = $q->result();

$r将产生:

[0] (name => 'Elto')
[1] (name => 'John')

而不是那样,我希望查询产生类似这样的东西:

[0][0] => 'Elto'
[1][0] => 'John'

我不知道是否可以这样做。如果有人想帮助解决这个问题,我将非常感激。

2 个答案:

答案 0 :(得分:2)

您只需使用result_array()代替result()

$this->db->select('id, name');
$this->db->order_by('name', 'asc');
$q = $this->db->get('students');
$r = $q->result_array();

result()将返回对象格式的行。

result_array()会将行返回到数组格式。

请浏览 CodeIgniter Generating Query Results

答案 1 :(得分:1)

您可以使用

$r = $q->result_array();

或者您可以使用

$r = $q->row_array(); 

仅追回一个项目。

查看官方文档以获取更多信息:

http://www.codeigniter.com/user_guide/database/results.html

问候。