查詢范圍方法的定義規范為:
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方法使用了閉包,閉包里面支持所有的鏈式操作方法。
更多詳情參看http://www.hmoore.net/thinkphp/thinkphp5_quickstart/147288