有没有办法用 Laravel 的 ELOQUENT ORM 来“限制”结果?
SELECT * FROM `games` LIMIT 30 , 30
那雄辩呢?
创建一个扩展 Eloquent 的游戏模型,并使用以下命令:
Game::take(30)->skip(30)->get();
这里的 take()将得到30条记录,这里的 skip()将偏移到30条记录。
take()
skip()
在最近的 Laravel 版本中,你也可以使用:
Game::limit(30)->offset(30)->get();
如果您正在寻找分页的结果,使用集成的 翻页员,它的工作非常好!
$games = Game::paginate(30); // $games->results = the 30 you asked for // $games->links() = the links to next, previous, etc pages
我们可以像下面这样使用极限:
Model::take(20)->get();
另外,我们可以通过以下方式使用它
只有第一
$cat_details = DB::table('an_category')->where('slug', 'people')->first();
通过限制和抵消而得到
$top_articles = DB::table('an_pages')->where('status',1)->limit(30)->offset(0)->orderBy('id', 'DESC')->get(); $remaining_articles = DB::table('an_pages')->where('status',1)->limit(30)->offset(30)->orderBy('id', 'DESC')->get();