YII框架行为behaviors用法示例


Posted in PHP onApril 26, 2019

本文实例讲述了YII框架行为behaviors用法。分享给大家供大家参考,具体如下:

文件 frontend/libs/FilterTest.php

<?php
/**
 * Created by PhpStorm.
 * Date: 2016/5/27
 * Time: 14:16
 */
namespace frontend\libs;
use Yii;
use yii\base\Action;
use yii\base\ActionFilter;
class FilterTest extends ActionFilter{
  //在action之前运行,可用来过滤输入
  public function beforeAction($action) {
    echo '在调用action前显示<br/>';
    return TRUE;//如果返回值为false,则action不会运行
  }
  //在action之后运行,可用来过滤输出
  public function afterAction($action, $result) {
    return $result.'在调用action后显示<br/>';//可以对action输出的$result进行过滤,retun的内容会直接显示
  }
}

frontend/controllers/TestbehaviorController.php

<?php
/**
 * Created by PhpStorm.
 * Date: 2016/5/27
 * Time: 14:19
 */
 namespace frontend\controllers;
 use yii\web\controller;
class TestbehaviorController extends Controller{
  public function behaviors(){
    return [
      'test'=>[
       'class'=>'frontend\libs\FilterTest',//调用过滤器
      ],
    ];
  }
  public function actionFilter(){
    return "当前action显示<br/>";//返回的内容会递交给过滤器,由afterAction处理
  }
}

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

PHP 相关文章推荐
聊天室php&amp;mysql(三)
Oct 09 PHP
php程序之die调试法 快速解决错误
Sep 17 PHP
PHP开发中常用的三个表单验证函数使用小结
Mar 03 PHP
php设计模式 Prototype (原型模式)代码
Jun 26 PHP
PHP判断是否有Get参数的方法
May 05 PHP
phpword插件导出word文件时中文乱码问题处理方案
Aug 19 PHP
PHP中mysql_field_type()函数用法
Nov 24 PHP
ThinkPHP公共配置文件与各自项目中配置文件组合的方法
Nov 24 PHP
php使用sql server验证连接数据库的方法
Dec 25 PHP
php+mysqli使用面向对象方式查询数据库实例
Jan 29 PHP
PHP实现的数组和XML文件相互转换功能示例
Mar 15 PHP
php如何实现数据库的备份和恢复
Nov 30 PHP
YII框架模块化处理操作示例
Apr 26 #PHP
Yii框架ACF(accessController)简单权限控制操作示例
Apr 26 #PHP
YII框架实现自定义第三方扩展操作示例
Apr 26 #PHP
PHP中PCRE正则解析代码详解
Apr 26 #PHP
通过PHP设置BugFree获取邮箱通知
Apr 25 #PHP
PHP实现字符串的全排列详解
Apr 24 #PHP
PHP实现二维数组按照指定的字段进行排序算法示例
Apr 23 #PHP
You might like
PHP防CC攻击实现代码
2011/12/29 PHP
PHP定义字符串的四种方式详解
2018/02/06 PHP
PHP面向对象程序设计重载(overloading)操作详解
2019/06/13 PHP
HTML复选框和单选框 checkbox和radio事件介绍
2012/12/12 Javascript
bootstrap data与jquery .data
2014/07/07 Javascript
js实现遮罩层划出效果是生成div而不是显示
2014/07/29 Javascript
JS控制弹出新页面窗口位置和大小的方法
2015/03/02 Javascript
setTimeout内不支持jquery的选择器的解决方案
2015/04/28 Javascript
javascript的 {} 语句块详解
2016/02/27 Javascript
JS实现评价的星星功能
2017/08/20 Javascript
JavaScript实现的超简单计算器功能示例
2017/12/23 Javascript
vue-scroller记录滚动位置的示例代码
2018/01/17 Javascript
深入浅析javascript函数中with
2018/10/28 Javascript
Vue核心概念Getter的使用方法
2019/01/18 Javascript
Python基于贪心算法解决背包问题示例
2017/11/27 Python
解决python3 urllib 链接中有中文的问题
2018/07/16 Python
深入理解Django-Signals信号量
2019/02/19 Python
Python-copy()与deepcopy()区别详解
2019/07/12 Python
CSS3效果:自定义“W”形运行轨迹实例
2017/03/29 HTML / CSS
Parts Express:音频、视频和扬声器的第一来源
2017/04/25 全球购物
EntityManager都有哪些方法
2013/11/01 面试题
大学生实习自我鉴定
2013/12/11 职场文书
中青班党性分析材料
2014/02/16 职场文书
认购协议书范本
2014/04/22 职场文书
《沙漠中的绿洲》教学反思
2014/04/24 职场文书
安全生产专项整治方案
2014/05/06 职场文书
银行求职信怎么写
2014/05/26 职场文书
法学专业毕业实习自我鉴定2014
2014/09/27 职场文书
2014年学校财务工作总结
2014/12/06 职场文书
2015年银行大堂经理工作总结
2015/04/24 职场文书
2015年招商引资工作总结
2015/04/25 职场文书
学习商务礼仪心得体会
2016/01/22 职场文书
2019年大学生学年自我鉴定!
2019/03/25 职场文书
oracle覆盖导入dmp文件的2种方法
2021/05/21 Oracle
vue+elementui 实现新增和修改共用一个弹框的完整代码
2021/06/08 Vue.js
详解SQL报错盲注
2022/07/23 SQL Server