Yii2 ActiveRecord 数据库查询的 asArray() 的性能提升有多少? [ 技术分享 ]
$s = microtime(true);
$list = Article::find()->asArray()->all();
echo bcsub(microtime(true), $s, 5);
//0.01130 秒
$s = microtime(true);
$list = Article::find()->all();
echo bcsub(microtime(true), $s, 5);
//0.03550秒
注:
- 均有Yii自带缓存加成
- 35000条数据
如此看来,如果只是单纯的取数据,那我们最好还是加上 asArray()
这样可以提升性能
共 3 条回复
-
我用24个字段,124533行数据做测试,加了
asArray
后,1秒左右,不加asArray
的话,需要40-45秒。但是加了
asArray
后,得到的数据都是字符串,没有整数类型的,这个怎么解决啊?
交给前端的数据都是字符串,处理者很麻烦共 3 条回复瀑布下的鱼 觉得很赞
crstudio
注册时间:2015-06-22
最后登录:2021-06-25
在线时长:6小时55分
最后登录:2021-06-25
在线时长:6小时55分
- 粉丝2
- 金钱95
- 威望0
- 积分155