Php 将obj std转换为模型laravel DB::query
我在想如何将我的结果从Php 将obj std转换为模型laravel DB::query,php,database,laravel,eloquent,Php,Database,Laravel,Eloquent,我在想如何将我的结果从obj std转换成一个自定义的雄辩模型,从DB::query()->get()方法 示例代码: $results = DB::table('listings')->get(); 现在,我如何使每个$result成为新列表()类。如注释中所述,如果您想要模型,请使用该模型。但是,您仍然可以使用表别名。如果要始终使用它,请在模型中指定它: protected $table = 'listings AS l'; 或者您可以使用from()动态指定它: 如果您想要一个
obj std
转换成一个自定义的雄辩模型,从DB::query()->get()
方法
示例代码:
$results = DB::table('listings')->get();
现在,我如何使每个
$result
成为新列表()
类。如注释中所述,如果您想要模型,请使用该模型。但是,您仍然可以使用表别名。如果要始终使用它,请在模型中指定它:
protected $table = 'listings AS l';
或者您可以使用from()
动态指定它:
如果您想要一个
列表数组
,为什么不使用列表::all()
?我本来打算使用它,但我不知道如何将表指定为l示例:DB::table('Listings as l')
。我无法在清单
构建器中解决这一问题。。。我还听说DB
更快。为什么需要为表名添加别名?如果需要构建更复杂的查询,请提供更多详细信息。如果没有,我怀疑使用DB
而不是elount
是否会显示出任何真正的性能优势(确保您可以尝试分析您的应用程序,看看它是否真的对您的情况产生影响,但一个好的经验法则是在实际需要时进行优化)。是的,确定。我只是给表名加了别名,因为我在查询中经常引用它。但你是对的。我只需删除查询中的所有别名实例,并使用列表模型构建它。谢谢你的帮助。成功了。啊,这太完美了。谢谢你的回答。正是我想要的。
Listing::from('listings AS l')->where(...)->join(...)->get();