位置: 编程技术 - 正文

YII Framework的filter过滤器用法分析

编辑:rootadmin

推荐整理分享YII Framework的filter过滤器用法分析,希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:,内容如对您有帮助,希望把文章链接给更多的朋友!

本文实例讲述了YII Framework的filter过滤器用法。分享给大家供大家参考,具体如下:

首先看官方给出的说明文档,什么是过滤器,过滤器的作用,过滤器的规则,过滤器的定义方法等等。

然后对过滤器进行一个总结。

访问控制过滤器将被执行以确保在执行请求的动作之前用户已通过身份验证;性能过滤器可用于测量控制器执行所用的时间。

一个动作可以有多个过滤器。过滤器执行顺序为它们出现在过滤器列表中的顺序。过滤器可以阻止动作及后面其他过滤器的执行

过滤器可以定义为一个控制器类的方法。方法名必须以 filter 开头。例如,现有的 filterAccessControl 方法定义了一个名为 accessControl 的过滤器。 过滤器方法必须为如下结构:

其中的 $filterChain (过滤器链)是一个 CFilterChain 的实例,代表与所请求动作相关的过滤器列表。在过滤器方法中, 我们可以调用 $filterChain->run() 以继续执行后续过滤器和动作。

过滤器也可以是一个 CFilter 或其子类的实例。如下代码定义了一个新的过滤器类:

要对动作应用过滤器,我们需要覆盖 CController::filters() 方法。此方法应返回一个过滤器配置数组。例如:

上述代码指定了两个过滤器: postOnly 和 PerformanceFilter。 postOnly 过滤器是基于方法的(相应的过滤器方法已在 CController 中定义); 而 performanceFilter 过滤器是基于对象的。路径别名application.filters.PerformanceFilter 指定过滤器类文件是protected/filters/PerformanceFilter。我们使用一个数组配置 PerformanceFilter ,这样它就可被用于初始化过滤器对象的属性值。此处 PerformanceFilter 的 unit 属性值将被初始为 second。

使用加减号,我们可指定哪些动作应该或不应该应用过滤器。上述代码中, postOnly 应只被应用于 edit 和create 动作,而 PerformanceFilter 应被应用于 除了 edit 和 create 之外的动作。 如果过滤器配置中没有使用加减号,则此过滤器将被应用于所有动作。

过滤器功能:

用于对访问者和数据的过滤和对访问操作的记录

YII Framework的filter过滤器用法分析

使用方法:

一作为controller的一个方法。方法名以filter开头。

二定义对立的filter类,要求extends CFilter。

CFilter

下面举例说明两种filter规则的使用:

SiteController.php

/www/yii_dev/testwebap/protected# tree .├── commands│ ├── shell│ ├── TestCommand.php│ └── TestCommand.php~├── components│ ├── Controller.php│ └── UserIdentity.php├── config│ ├── console.php│ ├── main.php│ └── test.php├── controllers│ ├── post│ │ └── UpdateAction.php│ ├── SiteController.php│ ├── TestTestController.php│ └── UserController.php├── filters│ └── MyFilter.php MyFilter.php

action

action-->MyFilter-->post

action-->MyFilter-->post

以上可以看到filter的具体执行流程。

在filters中有-、+具体功能是+表示仅仅作用于这一些action-后边跟action名称列表。表示排除在外。如果没有-、+则会应用的所有的action

更多关于Yii相关内容感兴趣的读者可查看本站专题:《Yii框架入门及常用技巧总结》、《php优秀开发框架总结》、《smarty模板入门基础教程》、《php日期与时间用法总结》、《php面向对象程序设计入门教程》、《php字符串(string)用法总结》、《php+mysql数据库操作入门教程》及《php常见数据库操作技巧汇总》

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

YII Framework学习之request与response用法(基于CHttpRequest响应) 本文实例讲述了YIIFramework学习之request与response用法。分享给大家供大家参考,具体如下:YII中提供了CHttpRequest,封装了请求常用的方法。具体代码如下

PHP Smarty模版简单使用方法 本文实例讲述了PHPSmarty模版简单使用方法。分享给大家供大家参考,具体如下:Index.php:require('../libs/Smarty.class.php');$smarty=newSmarty;//添加自定义调节器$sm

php实现搜索类封装示例 本文为大家分享了php实现搜索类封装示例,供大家参考,具体内容如下php/***SoClass.php*索引与搜索类*/classSoClass{private$_xindex;private$_xsearch;private$_project;publi

标签: YII Framework的filter过滤器用法分析

本文链接地址:https://www.jiuchutong.com/biancheng/293191.html 转载请保留说明!

上一篇:Laravel路由设定和子路由设定实例分析(laravel访问路由方式)

下一篇:PHP Smarty模版简单使用方法(php模板教程)

  • 什么是简易征税项目
  • 完税价格是含税价格吗?
  • 个人所得税如何办理退税
  • 个税申报赡养老人只能填一个吗
  • 以前年度损益调整结转到哪里
  • 附加税减免所得税汇缴的时候需要调整吗
  • 固定资产计入了主营业务成本,该怎么办
  • 投入的流动资金函怎么写
  • 长期股权投资的交易费用计入哪里
  • 现金流管理模式
  • 工程围挡做法
  • 冲减预付账款怎么记账
  • 投资公司的收入就是投资收益吗
  • 普通发票需要做分录吗?
  • 小规模纳税人增值税优惠政策
  • 建筑企业差额征税账务处理
  • 待抵扣进项税额是什么情况下用的
  • 工程发票没写经办人没写可以吗
  • 特定业务预缴所得税不能填写
  • 筹建期间的工资可以直接记到管理费用吗
  • 应付供货单位的货款属于什么会计科目
  • 上个月个税申报能作废重报吗
  • 核销单丢失后应该怎么挂失和补录处理呢?
  • 商场收取商户违约金上什么税?
  • 会计记账凭证的填制
  • 财务分析的起点是企业的内部分析报告
  • 新员工15号入职交社保吗
  • 个人将房产无偿赠与他人应交个人所得税吗
  • 购置土地税款怎么入账?
  • 不动产广告位出租税率是多少
  • 鸿蒙系统怎么同步数据
  • xampp如何运行php项目
  • 借别人资质投标如何签合同
  • 文件夹删除需要管理员权限怎么弄
  • 查补的增值税能抵留抵吗
  • 债券到期收回本息计算单
  • 税盘可以全额抵扣是什么意思
  • 土建工程付款方式比例
  • 哥本哈根的地形
  • 购买货物收到发票财务报表怎么提现
  • 酒店购买天然气流程
  • 爬虫基本原理有哪些
  • 无偿调出固定资产账面价值为零如何处理
  • 社保缴费基数是怎么确定的
  • mongodb常见问题
  • 会计和税法折旧年限不相同
  • 小规模未开票收入填在哪里
  • 建筑业营改增的主要内容
  • 销售收入怎么入账
  • 员工餐费报销分录怎么弄
  • 免税饲料做为免税吗
  • 预缴增值税怎么计提
  • 上一年度主营业务成本多计提了
  • 困难行业企业包括哪四大类
  • 增值税普票跨月作废怎么操作
  • 债券分期付息到期还本的意思
  • 客户付款是借方还是贷方
  • 劳务支出如何做账
  • 农业生产成本核算方法
  • 税务局三代手续费是什么
  • 财产保险的金额
  • 收到投资款如何声明
  • 年终结账账务处理
  • 搭赠商品如何开票
  • sql server中数据类型怎么用
  • 韩国电脑用什么系统
  • 设置和使用电子技术监控设备收集信息
  • 如何在win7电脑上添加新的打印机
  • win8开机直接进入传统桌面
  • js手机模拟器
  • jquery技巧
  • unity 更新
  • js判断字符串字符出现的次数
  • 安卓底层重写
  • 安卓全局替换
  • js闭包作用问题解决应用
  • javascript Base类 包含基本的方法
  • 税务工作秘密管理暂行办法
  • 上海税务开户
  • 版权登记条件
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设