查询范围方法的定义规范为:
scope + 查询范围名称
* * * * *
scope方法支持使用闭包,例如:
~~~
// 根据查询范围获取用户数据列表
public function index()
{
//
$list = UserModel::scope(function ($query) {
$query->where('email','thinkphp@qq.com')
->where('status',1)
->order('id', 'desc');
})
->select();
foreach ($list as $user) {
echo $user->nickname . '<br/>';
echo $user->email . '<br/>';
echo $user->birthday . '<br/>';
echo $user->status . '<br/>';
echo '-------------------------------------<br/>';
}
}
~~~
上面的scope方法使用了闭包,闭包里面支持所有的链式操作方法。
更多详情参看https://www.kancloud.cn/thinkphp/thinkphp5_quickstart/147288