SiteController.php中的函数行为是什么?

时间:2016-10-17 05:07:09

标签: yii2 yii2-basic-app

我开始使用yii2 我对YII的早期版本一无所知 但是我对codeigniter有很好的了解,并且在过去的3年里一直在使用codeigniter。

我的问题如下:

SiteController.php文件中有一个函数名behaviors()。 它有以下代码。我想知道它做了什么?

public function behaviors() {
        return [
            'access' => [
                'class' => AccessControl::className(),
                'only' => ['logout'],
                'rules' => [
                    [
                        'actions' => ['logout'],
                        'allow' => true,
                        'roles' => ['@'],
                    ],
                ],
            ],
            'verbs' => [
                'class' => VerbFilter::className(),
                'actions' => [
                    'logout' => ['post'],
                ],
            ],
        ];
    }

1 个答案:

答案 0 :(得分:1)

在你提供的样本中有两部分

'access' 

'verbs'

访问部分配置访问控制过滤规则 http://www.yiiframework.com/doc-2.0/yii-filters-accesscontrol.html
Yii2实现的授权方法之一(最好由只需要一些简单访问控制的应用程序使用)

http://www.yiiframework.com/doc-2.0/yii-filters-verbfilter.html 为每个操作定义允许的HTTP请求方法。 VerbFilter检查请求的操作是否允许HTTP请求方法。如果不允许,它将抛出HTTP 405异常。 在您的情况下设置操作注销必须由post方法执行

您可以看到简要指南

http://www.yiiframework.com/doc-2.0/guide-structure-filters.html