YII2框架中actions的作用与使用方法示例


Posted in PHP onMarch 13, 2020

本文实例讲述了YII2框架中actions的作用与使用方法。分享给大家供大家参考,具体如下:

我们常在控制器中看到一个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来访问调用了。

YII2框架中actions的作用与使用方法示例

希望本文所述对大家基于Yii框架的PHP程序设计有所帮助。

PHP 相关文章推荐
php下MYSQL limit的优化
Jan 10 PHP
php 无极分类(递归)实现代码
Jan 05 PHP
PHP遍历二维数组的代码
Apr 22 PHP
Look And Say 序列php实现代码
May 22 PHP
解析:php调用MsSQL存储过程使用内置RETVAL获取过程中的return值
Jul 03 PHP
从零开始学YII2框架(六)高级应用程序模板
Aug 20 PHP
PHP封装的Twitter访问类实例
Jul 18 PHP
ThinkPHP数据操作方法总结
Sep 28 PHP
php+MySql实现登录系统与输出浏览者信息功能
Jul 01 PHP
[原创]php常用字符串输出方法分析(echo,print,printf及sprintf)
Jul 09 PHP
php中简单的对称加密算法实现
Jan 05 PHP
Thinkphp5行为使用方法汇总
Dec 21 PHP
PHP正则之正向预查与反向预查讲解与实例
Apr 06 #PHP
TP5框架安全机制实例分析
Apr 05 #PHP
TP5框架实现自定义分页样式的方法示例
Apr 05 #PHP
TP5框架model常见操作示例小结【增删改查、聚合、时间戳、软删除等】
Apr 05 #PHP
TP5框架实现签到功能的方法分析
Apr 05 #PHP
TP5框架页面跳转样式操作示例
Apr 05 #PHP
TP5框架实现的数据库备份功能示例
Apr 05 #PHP
You might like
php检测文件编码的方法示例
2014/04/25 PHP
PHP中round()函数对浮点数进行四舍五入的方法
2014/11/19 PHP
PHP5.3连接Oracle客户端及PDO_OCI模块的安装方法
2016/05/13 PHP
PHP函数用法详解【初始化、嵌套、内置函数等】
2020/06/02 PHP
jQuery ui插件的使用方法代码实例
2013/05/08 Javascript
开发插件的两个方法jquery.fn.extend与jquery.extend
2013/11/21 Javascript
JavaScript中的值是按值传递还是按引用传递问题探讨
2015/01/30 Javascript
jQuery插件slicebox实现3D动画图片轮播切换特效
2015/04/12 Javascript
Bootstrap每天必学之基础排版
2015/11/20 Javascript
jquery html动态添加的元素绑定事件详解
2016/05/24 Javascript
BootStrap中Datetimepicker和uploadify插件应用实例小结
2016/05/26 Javascript
jQuery获取attr()与prop()属性值的方法及区别介绍
2016/07/06 Javascript
js 判断一组日期是否是连续的简单实例
2016/07/11 Javascript
js实现四舍五入完全保留两位小数的方法
2016/08/02 Javascript
详解js中==与===的区别
2017/01/08 Javascript
vue使用xe-utils函数库的具体方法
2018/03/06 Javascript
element UI upload组件上传附件格式限制方法
2018/09/04 Javascript
解决betterScroll在vue中存在图片时,出现拉不动的问题
2018/09/27 Javascript
vuejs2.0运用原生js实现简单拖拽元素功能
2020/08/21 Javascript
关于微信公众号开发无法支付的问题解决
2018/12/28 Javascript
axios实现文件上传并获取进度
2020/03/25 Javascript
基于JavaScript获取base64图片大小
2019/10/18 Javascript
jquery实现直播弹幕效果
2019/11/28 jQuery
JS跨浏览器解析XML应用过程详解
2020/10/16 Javascript
python启动办公软件进程(word、excel、ppt、以及wps的et、wps、wpp)
2009/04/09 Python
Python检测生僻字的实现方法
2016/10/23 Python
python 2.7.14安装图文教程
2018/04/08 Python
Django实现微信小程序支付的示例代码
2020/09/03 Python
CSS3中的content属性使用示例
2015/07/20 HTML / CSS
英国最大的电子产品和家电零售企业:Currys PC World
2016/09/24 全球购物
TripAdvisor印尼站:全球领先的旅游网站
2018/03/15 全球购物
Linux如何修改文件和文件夹的权限
2013/09/05 面试题
大学军训自我鉴定
2013/12/15 职场文书
求职教师自荐书
2014/06/19 职场文书
小学生读书笔记
2015/07/01 职场文书
MySQL去除重叠时间求时间差和的实现
2021/08/23 MySQL