wjlwjl 发表于 2011-8-4 15:45:16

result() 与 row_array()的区别?

我在模型的查询中,看到有的用row_array();有的用result();他们分别返回什么样的数据呢?还有就是在什么情况下用row_array()比较好,谢谢大虾啦。。{:1_1:}

zhouli520 发表于 2011-8-4 15:53:34

row_array();
返回的是一行数据的数组
result();
返回的是一个对象数组

在你查询语句只有一行数据的时候用row_array();或者row(),两者差别一个是array一个是object

longjianghu 发表于 2011-8-4 16:32:23

你习惯面向对象方式就用result,习惯传统方式用result_array();

田斯 发表于 2011-8-5 10:49:15

没有什么区别,rusult_array()返回的是一个数组,如果你要输出或者调用的话 用$数组名['键值']来调用,如果是result返回的对象数组的话,则直接可以 echo 数组名->对象名来直接输出或者调用,这只是方法的不同

jinglong 发表于 2011-8-5 11:09:38

田斯 发表于 2011-8-5 10:49 static/image/common/back.gif
没有什么区别,rusult_array()返回的是一个数组,如果你要输出或者调用的话 用$数组名['键值']来调用,如果 ...

如果我返回的是一个对象,怎么遍历里面的数据呢?

田斯 发表于 2011-8-5 11:11:32

本帖最后由 田斯 于 2011-8-5 11:12 编辑

jinglong 发表于 2011-8-5 11:09 static/image/common/back.gif
如果我返回的是一个对象,怎么遍历里面的数据呢?
foreach($query->result() as $row){
      
      echo $row->name;
}

jinglong 发表于 2011-8-5 11:15:59

田斯 发表于 2011-8-5 11:11 static/image/common/back.gif
foreach($query->result() as $row){
      
      echo $row->name;


我以为foreach只能遍历数组的。。。。。。

田斯 发表于 2011-8-5 11:20:51

jinglong 发表于 2011-8-5 11:15 static/image/common/back.gif
我以为foreach只能遍历数组的。。。。。。

result()的返回值也是数组,只不过是对象数组,和关联数组不同的就是不是用键值去调用的,这么说,你理解吧,

wang3feng 发表于 2011-8-5 14:50:10

田斯 发表于 2011-8-5 11:20 static/image/common/back.gif
result()的返回值也是数组,只不过是对象数组,和关联数组不同的就是不是用键值去调用的,这么说,你理解 ...

嗯。理解了。

gs129090 发表于 2011-8-6 19:59:58

学习了
页: [1]
查看完整版本: result() 与 row_array()的区别?