线面这段php是什么意思(yii2框架的)

批量获取数据¶在QueryBuilder章节,我们解释了你可以使用batchquery来在查询大规模数据时保持内存使用在一定的限额以下。你可以在ActiveRe... 批量获取数据 ¶

在 Query Builder 章节,我们解释了你可以使用 batch query 来在查询大规模数据时保持内存使用在一定的限额以下。你可以在Active Record中使用相同的技术。比如:
// fetch 10 customers at a time
foreach (Customer::find()->batch(10) as $customers) {
// $customers is an array of 10 or fewer Customer objects
}
// fetch 10 customers at a time and iterate them one by one
foreach (Customer::find()->each(10) as $customer) {
// $customer is a Customer object
}
// batch query with eager loading
foreach (Customer::find()->with('orders')->each() as $customer) {
}
展开
 我来答
windblast
推荐于2016-08-06 · 知道合伙人软件行家
windblast
知道合伙人软件行家
采纳数:5633 获赞数:13617
毕业于空军第一航空学院电子专业,1991年开始接触电脑,从事多年计算机编程,具有较丰富的经验。

向TA提问 私信TA
展开全部

代码都做了注释了。


// 一次性批量获取10条记录
foreach (Customer::find()->batch(10) as $customers)
{    
    // $customers变量的内容包含10个(或更少)记录对象的数组
}

 // 一次获取10个客户的记录并逐一处理
foreach (Customer::find()->each(10) as $customer) {   
   // $customer 是一个 ”Customer“ 对象
}

// 贪婪加载模式的批处理查询
foreach (Customer::find()->with('orders')->each() as $customer) {

}
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式