我开始使用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'],
],
],
];
}
答案 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