yii2 yii\db\ActiveRecord find() 和 findBySql()返回结果不同?

Yii2框架中:customer表中共7条数据这时前提Customer::find()->count();//返回7Customer::findBySql(‘select... Yii2框架中:
customer表中共7条数据 这时前提

Customer::find()->count(); //返回7
Customer::findBySql(‘select * from customer’)->count(); //返回1
API手册上说 find()和 findBySql都是返回ActiveQuery对象,对于同一个表为什么返回结果不同呢?
而且方法1返回的结果可以用Pagination进行分页,方法2却不支持分页,这又是为什么呢,谢谢哈
展开
 我来答
  • 你的回答被采纳后将获得:
  • 系统奖励15(财富值+成长值)+难题奖励10(财富值+成长值)+提问者悬赏10(财富值+成长值)
YRS账号
2014-11-06 · TA获得超过851个赞
知道小有建树答主
回答量:362
采纳率:0%
帮助的人:434万
展开全部
Customer::findBySql('SELECT * FROM customer')->all()->count();

试试这个
追问
首先谢谢YRS的回答。find返回的对象类型和findBySql返回的对象类型虽然相同,但两者对count的返回结果却不同(不知道为什么),不过可以用$rows=findBySql('select * from customer')->all(); echo count($rows);的方法得到行数,$rows是一个对象的数组。
本回答被提问者和网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式