首页  >  文章  >  后端开发  >  查询出来的$query怎么转化成data数组?

查询出来的$query怎么转化成data数组?

WBOY
WBOY原创
2016-06-20 12:35:381023浏览

$query=$this->db->select('select dep_id, dep_name from xy_departments order by dep_id asc');


查询出来的$query怎么转化成
$data = array(
'财经' => '财经',
'哲学' => '哲学'
);
这样的数组形式


回复讨论(解决方案)

print_r($query);

看到的是什么

print_r($query);

看到的是什么



CI_DB_mysql_result Object
(
    [conn_id] => Resource id #51
    [result_id] => Resource id #59
    [result_array] => Array
        (
        )

    [result_object] => Array
        (
        )

    [custom_result_object] => Array
        (
        )

    [current_row] => 0
    [num_rows] => 3
    [row_data] => 
)

http://blog.csdn.net/cindylu520/article/details/4098360

$rows =  mysql_fetch_assoc($query);

可以使用mysql_fetch_array(data,array_type)函数
参数:
data —— 查询的结果集
array_type  ——MYSQL_ASSOC(产生关联数组),MYSQL_NUM(产生数字数组),MYSQL_BOTH(默认,同时产生关联和数字数组)

取出数组,for循环组装成新数组形式就好了

CI框架用     var_dump($result->result_array());   打印出关联数组

手册说明:
result_array()
该方法执行成功时将记录集作为关联数组返回。失败时返回空数组。一般情况下,我们使用下面的方法遍历结果,代码就像这样:

$query = $this->db->query("要执行的 SQL");

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

$result = array();while($row = mysql_fetch_assoc($query)){    $result[] = $row;}print_r($result);

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn