本文实例讲述了YII2框架中actions的作用与使用方法。分享给大家供大家参考,具体如下:
我们常在控制器中看到一个actions的方法,这个方法具体的作用是共用一些功能相同的action,方便调用。
当然我们也可以自已写一些action来进行调用。在项目目录下创建common目录,并创建TestAction.php文件。action文件的存放路径可以随意指定。
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
|
<?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}" ;
}
}
|
控制器代码如下:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
|
<?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来访问调用了。
原文链接:https://www.cnblogs.com/jkko123/p/8669728.html