用户
 找回密码
 入住 CI 中国社区
搜索
12
返回列表 发新帖
楼主: 午灬夏
收起左侧

[已解决] 关于CI的数据库类!

[复制链接]
 楼主| 发表于 2012-4-14 09:44:34 | 显示全部楼层
kissgxd 发表于 2012-4-13 13:14
你获得的$query本身就相当于getAll($sql) 了啊
getAll($sql) 后不也得用foreach才能把数据取出来么 ...

嗯,其实差不多!
CI里面:
$query = $this->db->query($sql);
$result = $query->result_array();

ecshop里面
$result = $GLOBALS['db']->getAll($sql);
它在getall方法里面已经循环了!
发表于 2012-4-14 11:02:07 | 显示全部楼层
午灬夏 发表于 2012-4-14 09:44
嗯,其实差不多!
CI里面:
$query = $this->db->query($sql);

单条结果用$query->row()获取
你这明显是不认真看手册导致的误解。
发表于 2013-6-2 18:09:13 | 显示全部楼层
我想,好处是,你在getAll里已经循环了,当你输出时还得在循环一次,不是多一次循环吗?
如果想把结果传入到模板,可以这样:
比如:
$query = $this->db->get('xx_table_name',20,0);
$data['query'] = $query;
$this->load->view('xxx_view',$data);
然后视图中这样调用:
if ($query->num_rows() > 0)
{
   $row = $query->row();
   echo $row->title;
   echo $row->name;
   echo $row->body;
}

本版积分规则