在Laravel中進行多表聯合查詢可以通過使用Eloquent ORM來實現。以下是一個示例代碼,假設有兩個表posts和comments,需要查詢出每個post以及與之關聯的所有comments:
// 在Post模型中定義關聯關系
class Post extends Model
{
public function comments()
{
return $this->hasMany(Comment::class);
}
}
// 在Comment模型中定義關聯關系
class Comment extends Model
{
public function post()
{
return $this->belongsTo(Post::class);
}
}
// 在控制器中進行聯合查詢
$posts = Post::with('comments')->get();
// 遍歷結果
foreach ($posts as $post) {
echo $post->title;
foreach ($post->comments as $comment) {
echo $comment->content;
}
}
在上面的代碼中,使用了Eloquent ORM的with方法來進行關聯查詢,通過定義好模型之間的關聯關系,可以方便地進行多表聯合查詢。