Laravel - 使用查询功能会出错

时间:2015-07-10 21:57:17

标签: php laravel eloquent

我正在尝试取$max个结果。但有时$max为NULL,因此查询必须返回所有结果。

我使用此代码:

$results = MyModel::whereIn('player', $players)->take(function($query) use ($max) {
    if (isset($max)) {
        $query->take($max);
    }
})->get();

但是我收到了这个错误:

[ErrorException]                                       
  Object of class Closure could not be converted to int 

1 个答案:

答案 0 :(得分:0)

你可以试试这个:

$query = MyModel::whereIn('player', $players);
if (!empty($max)) {
    $query->take($max);
}

$result = $query->get();