【发布时间】:2021-12-17 09:30:18
【问题描述】:
我最近在面试中遇到了这个问题。
$a = Flight::find(1);
$b = Flight:find(1);
将创建多少个对象?将执行多少个数据库查询? 非常感谢您的详细解释
【问题讨论】:
-
Stack Overflow 不是提供免费面试指导的网站。
我最近在面试中遇到了这个问题。
$a = Flight::find(1);
$b = Flight:find(1);
将创建多少个对象?将执行多少个数据库查询? 非常感谢您的详细解释
【问题讨论】:
在上述任一代码中,查询将只是 1
$a = Flight::find(1); 与
select * from `flights` where `flights`.`id` = 1 limit 1`
由于 $a 和 $b 是 2 个不同的变量,尽管它们调用相同的 Eloquent 函数,但查询是不同的。所以上面的代码会产生2个查询。
创建的对象也将是 2。
查看这里了解更多关于 Laravel Eloquent https://laravel.com/docs/8.x/eloquent
【讨论】: