## 如何利用 Session 实现用户登录验证 通过继承控制器的 `beforeAction` 方法,可实现控制器中只有部分方法调用用户登录验证。 >[info] 实际项目中最好把验证权限的部分封装成一个组件。 ~~~ <?php namespace apps\index\controllers; use mix\web\Controller; /** * 默认控制器 * @author 刘健 <coder.liu@qq.com> */ class IndexController extends Controller { // 前置过滤 public $beforeFilter = [ 'except' => [ 'actionIndex' ] ]; // 前置动作 public function beforeAction($action) { parent::beforeAction($action); // TODO: Change the autogenerated stub // 验证权限 if (!in_array($action, $this->beforeFilter['except'])) { $userinfo = \Mix::app()->session->get('userinfo'); if (empty($userinfo)) { \Mix::app()->response->redirect('/'); \Mix::app()->response->send(); \Mix::app()->end(); } } } // 默认动作 public function actionIndex() { return 'Hello World' . PHP_EOL; } } ~~~