actions在YII2框架中的作用是什么

actions在YII2框架中的作用是什么

actions在YII2框架中的作用是什么?针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。

我们常在控制器中看到一个actions的方法,这个方法具体的作用是共用一些功能相同的action,方便调用。

当然我们也可以自已写一些action来进行调用。在项目目录下创建common目录,并创建TestAction.php文件。action文件的存放路径可以随意指定。

<?php

//注意这里的命名空间,要跟你的目录对应
namespace app\common;

use yii\base\Action;

//我们需要继承yii\base\Action类
class TestAction extends Action {

  //这里面的三个参数的值是通过控制器actions中配置而来的
  public $param1 = null;
  public $param2 = null;
  public $param3 = null;

  //实现run方法
  public function run() {
    echo "test run param1: {$this->param1} param2: {$this->param2} param3: {$this->param3}";
  }
}

控制器代码如下:

<?php

namespace app\controllers;

use YII;
use yii\web\Controller;

class IndexController extends Controller
{
  //actions的作用主要是共用功能相同的方法
  public function actions()
  {
    return [
      'test' => [
        'class' => 'app\common\TestAction',
        'param1' => 'hello',
        'param2' => 'world',
        'param3' => '!!!',
      ],
    ];
  }
}

这样我们在地址栏就可以通过/index/test来访问调用了。

actions在YII2框架中的作用是什么

关于actions在YII2框架中的作用是什么问题的解答就分享到这里了,希望以上内容可以对大家有一定的帮助,如果你还有很多疑惑没有解开,可以关注行业资讯频道了解更多相关知识。