将变量调用到子函数?
Calling variables to sub function?
我有一个 post 变量,我想将它用于我的子函数。我怎样才能做到这一点 ?当我尝试时它说 "Undefined Variable".
控制器
public function getSingle($slug){
$post = Post::where('slug',$slug)->first();
$related_categories_posts = Post::whereHas('categories',function ($query){
$query->where('category_name', $post->categories->category_name);
})
->take(3)
->get();
return view('frontend.single')
->with('post',$post)
->with('related_categories_posts',$related_categories_posts);
}
有什么建议吗?
您需要使用 use
将此变量传递给函数,如 docs 中所述。
$related_categories_posts = Post::whereHas('categories', function ($query) use ($post){
$query->where('category_name', $post->categories->category_name);
})
我有一个 post 变量,我想将它用于我的子函数。我怎样才能做到这一点 ?当我尝试时它说 "Undefined Variable".
控制器
public function getSingle($slug){
$post = Post::where('slug',$slug)->first();
$related_categories_posts = Post::whereHas('categories',function ($query){
$query->where('category_name', $post->categories->category_name);
})
->take(3)
->get();
return view('frontend.single')
->with('post',$post)
->with('related_categories_posts',$related_categories_posts);
}
有什么建议吗?
您需要使用 use
将此变量传递给函数,如 docs 中所述。
$related_categories_posts = Post::whereHas('categories', function ($query) use ($post){
$query->where('category_name', $post->categories->category_name);
})