Laravel 5 Laravel 5:如何将参数传递到内部where查询

Laravel 5 Laravel 5:如何将参数传递到内部where查询,laravel-5,laravel-5.2,Laravel 5,Laravel 5.2,我有以下疑问: $visible = array(1,2,3); $views = DB::table('ims_view') ->Where(function($query) { $query->where('iv_status', 1)->whereIn('id', $visible); })->orderBy('iv_name', 'asc')->get(); 错误:未定义变量:可见 如何将变量文件传递到内部where?您必须

我有以下疑问:

$visible = array(1,2,3);
$views = DB::table('ims_view')
    ->Where(function($query) {
        $query->where('iv_status', 1)->whereIn('id', $visible);
    })->orderBy('iv_name', 'asc')->get();
错误:未定义变量:可见


如何将变量文件传递到内部where?

您必须使用希望传递到作用域中的变量,如下所示: 使用($visible)

`$views = DB::table('ims_view')
    ->Where(function($query) use ($visible){
           $query->where('iv_status', 1)
                  ->whereIn('id', $visible);
            })->orderBy('iv_name', 'asc')->get();`