【发布时间】:2023-04-10 12:11:02
【问题描述】:
我的记录只有 15000 条。php 配置使用的内存是 128 mb。所以我得到了这个错误。
允许的内存大小为 134217728 字节已用尽
有两种方法可以解决这个问题。
- 道http://www.yiiframework.com/doc/guide/1.1/en/database.dao
- 增加 PHP 中允许的内存
我很困惑的是,如果我将允许的内存增加到 256,有一天当数据数变为 30 000 时,这个错误会再次出现。
所以我在开发大型应用程序时不应该使用 Yii cactiverecord findAll() 吗?或者我应该随着更多数据的进入而不断增加内存大小。
最好的方法是什么?
【问题讨论】:
-
将
createCommand用于自定义查询,即;仅获取您需要的内容并使用索引。 -
这不是一个非常大的模型数组的真正解决方案,但你可以做的是 user ->select() 只选择你需要的数据,所以如果你想显示一个不需要 id 的名称,电子邮件摘录。比你能做的是 Customer::find()->select('name')->all()
标签: php memory mysqli yii yii2