沃梦达 / 编程问答 / php问题 / 正文

EloquentModel::get() 和 all() 的区别

Difference between EloquentModel::get() and all()(EloquentModel::get() 和 all() 的区别)

本文介绍了EloquentModel::get() 和 all() 的区别的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

在 Eloquent 上使用 User::all() 和 User::get() 有什么区别?

What is the difference between uses User::all() and User::get() on Eloquent?

在 Laravel API 上它只描述了 all()EloquentModel 上.
也许 get()EloquentBuilder 中有描述.

On Laravel API it describes only all() on EloquentModel.
Maybe get() is described on EloquentBuilder.

推荐答案

User::all()User::get() 将做完全相同的事情.

User::all() and User::get() will do the exact same thing.

all()EloquentModel 上的一个静态方法.它所做的只是创建一个新的查询对象并对其调用 get().使用 all(),您根本无法修改执行的查询(除非您可以通过将它们作为参数传递来选择要选择的列).

all() is a static method on the EloquentModel. All it does is create a new query object and call get() on it. With all(), you cannot modify the query performed at all (except you can choose the columns to select by passing them as parameters).

get()EloquentBuilder 对象上的一个方法.如果需要修改查询,比如添加where子句,那么就必须使用get().例如,User::where('name', 'David')->get();.

get() is a method on the EloquentBuilder object. If you need to modify the query, such as adding a where clause, then you have to use get(). For example, User::where('name', 'David')->get();.

这篇关于EloquentModel::get() 和 all() 的区别的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!

本文标题为:EloquentModel::get() 和 all() 的区别

基础教程推荐