Laravel 8 使用游标

2021-07-19 11:24 更新

cursor 方法允许你使用游标遍历数据库,它只执行一次查询。处理大量的数据时, cursor 方法可以大大减少内存的使用量:

foreach (Flight::where('foo', 'bar')->cursor() as $flight) {
    //
} 

cursor 返回 Illuminate\Support\LazyCollection 实例。 Lazy collections 允许你使用 Laravel 集合中大多数集合方法,而且每次只会加载单个模型到内存中:

$users = App\Models\User::cursor()->filter(function ($user) {
    return $user->id > 500;
});

foreach ($users as $user) {
    echo $user->id;
} 


以上内容是否对您有帮助:
在线笔记
App下载
App下载

扫描二维码

下载编程狮App

公众号
微信公众号

编程狮公众号