Laravel闭包传值,Laravel 中的闭包函数参数如何传入?

Song889 次浏览0个评论2021年10月09日

Laravel中有很多闭包函数;比如复合查询、邮件发送、Cache缓存等;使用过程中我们可能需要传递自定义参数。

Laravel中向闭包传递参数统一使用use方法。案例如下:

Laravel 复合查询的闭包函数传参

$users_id = 1;
$schools_ids = [1,2,3];
$test = Test::where('type', 1)->where(function($query) use($users_id, $schools_ids){
    $query->where('users_id', $users_id)->orWhereIn('schools_id', $schools_ids);
})->paginate(10);

Laravel Cache缓存闭包参数传递

$test_id = 1;
$test = Cache::remember('test',600,function () use ($test_id) {
    return Test::getTestById($test_id);
});

Laravel Email闭包参数传递

$data = ["sendto" => "", "name" => "", "title" => "", "info" => ""];
Mail::send('admin.emails', $data, function ($message) use ($data) {
    $message->from(env("MAIL_USERNAME"), "Laravel学习网");
    $message->to($data['sendto'], $data['name'])->subject($data['title']);
});

提交评论

请登录后评论

用户评论

    当前暂无评价,快来发表您的观点吧...

更多相关好文

    当前暂无更多相关好文推荐...