微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

php – 查询构建器:将参数传递给匿名函数

我在将变量传递给查询构建器闭包时出现问题,这是我的代码
function get_usersbyname($name){
    dd($name);
    $resultset = DB::table('users')->where(function($query){
        $query->where('username','LIKE',$name);
    });
....
}

如果我运行它,它会返回一个错误“未定义的名称变量”,但我已经传递$name变量并检查它的存在.
此外,我找不到任何资源解释如何将变量传递给查询构建器匿名函数.
你能帮我解决这个问题吗?

您需要告诉匿名函数使用该变量,如…

因为该变量超出了匿名函数的范围,所以需要使用use关键字传递它,如下例所示.

function get_usersbyname($name){
    dd($name);
    $resultset = DB::table('users')->where(function($query) use ($name) {
        $query->where('username',$name);
    });
....
}

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐