Yii控制器中filter过滤器用法分析


Posted in PHP onJuly 15, 2016

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

指定过滤动作,(如下projectContext()方法在新建,列表,管理页面调用时使用)

public function filters()
{
  return array(
    'accessControl', // perform access control for CRUD operations
    'postOnly + delete', // we only allow deletion via POST request
    'projectContext +create index admin',
  );
}

添加一些过滤器逻辑,定义过滤方法,过滤方法前必加filter

public function filterProjectContext($filterChain)
{
  $prijectId = null;
  if(isset($_POST['pid'])){
    $projectId = $_POST['pid'];
  }elseif(isset($_GET['pid'])){
    $projectId = $_GET['pid'];
  }
  $this->loadProject($projectId);
  $filterChain->run();
}
public function loadProject($projectid)
{
  if($this->_project === null){
    $this->_project = Project::model()->findbyPK($projectid);
    if($this->_project === null){
      throw new CHttpException(404,'请求和项目没找到!');
    }
  }
  return $this->_project;
}

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

PHP 相关文章推荐
解决控件遮挡问题:关于有窗口元素和无窗口元素
Jan 28 PHP
php 引用(&)详解
Nov 20 PHP
php购物网站支付paypal使用方法
Nov 28 PHP
php获取通过http协议post提交过来xml数据及解析xml
Dec 16 PHP
采用ThinkPHP中F方法实现快速缓存实例
Jun 13 PHP
PHP实现文件上传和多文件上传
Dec 24 PHP
在WordPress中实现发送http请求的相关函数解析
Dec 29 PHP
thinkPHP实现的省市区三级联动功能示例
May 05 PHP
php-fpm.conf配置文件中文说明详解及重要参数说明
Oct 10 PHP
PHP字符串中抽取子串操作实例分析
Jun 22 PHP
基于Laravel 多个中间件的执行顺序详解
Oct 21 PHP
Swoole源码中如何查询Websocket的连接问题详解
Aug 30 PHP
Yii编程开发常见调用技巧集锦
Jul 15 #PHP
如何正确配置Nginx + PHP
Jul 15 #PHP
Yii净化器CHtmlPurifier用法示例(过滤不良代码)
Jul 15 #PHP
Yii列表定义与使用分页方法小结(3种方法)
Jul 15 #PHP
session 加入redis的实现代码
Jul 15 #PHP
Yii模型操作之criteria查找数据库的方法
Jul 15 #PHP
功能强大的PHP POST提交数据类
Jul 15 #PHP
You might like
Breeze 文章管理系统 v1.0.0正式发布
2006/12/14 PHP
Codeigniter中禁止A Database Error Occurred错误提示的方法
2014/06/12 PHP
php数据结构之顺序链表与链式线性表示例
2018/01/22 PHP
Laravel find in set排序实例
2019/10/09 PHP
jQuery AJAX实现调用页面后台方法和web服务定义的方法分享
2012/03/01 Javascript
精心挑选的15个jQuery下拉菜单制作教程
2012/06/15 Javascript
javascript返回顶部效果(自写代码)
2013/01/06 Javascript
JS实现遮罩层效果的简单实例
2013/11/12 Javascript
Jquery promise实现一张一张加载图片
2015/11/13 Javascript
AngularJS通过$sce输出html的方法
2016/09/22 Javascript
webpack配置导致字体图标无法显示的解决方法
2018/03/06 Javascript
Javascript 编码约定(编码规范)
2018/03/11 Javascript
Babel 入门教程学习笔记
2018/06/13 Javascript
JavaScript Array对象基本方法详解
2019/09/03 Javascript
浅析微信小程序modal弹窗关闭默认会执行cancel问题
2019/10/14 Javascript
vue 项目中当访问路由不存在的时候默认访问404页面操作
2020/08/31 Javascript
Python与人工神经网络:使用神经网络识别手写图像介绍
2017/12/19 Python
Python使用re模块正则提取字符串中括号内的内容示例
2018/06/01 Python
对Python 3.5拼接列表的新语法详解
2018/11/08 Python
matplotlib实现热成像图colorbar和极坐标图的方法
2018/12/13 Python
Python中类的创建和实例化操作示例
2019/02/27 Python
OpenCV里的imshow()和Matplotlib.pyplot的imshow()的实现
2019/11/25 Python
PyQt5结合matplotlib绘图的实现示例
2020/09/15 Python
HTML5+lufylegend实现游戏中的卷轴
2016/02/29 HTML / CSS
SportsDirect.com马来西亚:英国第一体育零售商
2018/11/21 全球购物
ABOUT YOU匈牙利:500个最受欢迎的时尚品牌
2019/07/19 全球购物
用JAVA SOCKET编程,读服务器几个字符,再写入本地显示
2012/11/25 面试题
Java TransactionAPI (JTA) 主要包含几部分
2012/12/07 面试题
技术合作协议书范本
2014/04/18 职场文书
12岁生日演讲稿
2014/05/14 职场文书
区域销售主管岗位职责
2014/06/15 职场文书
入党积极分子学习党的纲领思想汇报
2014/09/13 职场文书
宿舍管理制度范本
2015/08/07 职场文书
2016年万圣节活动个人总结
2016/04/05 职场文书
应届毕业生的自我评价
2019/06/21 职场文书
java中如何截取字符串最后一位
2022/07/07 Java/Android