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 相关文章推荐
生成缩略图
Oct 09 PHP
PHP生成静态页面详解
Nov 19 PHP
PHP--用万网的接口实现域名查询功能
Dec 13 PHP
关于crontab的使用详解
Jun 24 PHP
PHP 转义使用详解
Jul 15 PHP
一个不易被发现的PHP后门代码解析
Jul 05 PHP
php定时执行任务设置详解
Feb 06 PHP
php随机显示指定文件夹下图片的方法
Jul 13 PHP
php支付宝在线支付接口开发教程
Sep 19 PHP
php封装的表单验证类完整实例
Oct 19 PHP
PHP实现的数独求解问题示例
Apr 18 PHP
PHP ADODB生成下拉列表框功能示例
May 29 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
PHP实现通过URL提取根域名
2016/03/31 PHP
Laravel框架生命周期与原理分析
2018/06/12 PHP
Javascript - HTML的request类
2006/07/15 Javascript
javascript document.compatMode兼容性
2010/02/23 Javascript
Jquery 动态循环输出表格具体方法
2013/11/23 Javascript
用js一次改变多个input的readonly属性值的方法
2014/06/11 Javascript
JavaScript错误处理
2015/02/03 Javascript
浅谈javascript中的instanceof和typeof
2015/02/27 Javascript
javascript实现链接单选效果的方法
2015/05/13 Javascript
JavaScript仿静态分页实现方法
2015/08/04 Javascript
js实现n秒倒计时后才可以点击的效果
2015/12/20 Javascript
图片上传之FileAPI与NodeJs
2017/01/24 NodeJs
详解Javascript百度地图接口开发文档中的类和方法
2017/02/07 Javascript
JS html时钟制作代码分享
2017/03/03 Javascript
vue vuex vue-rouert后台项目——权限路由(适合初学)
2017/12/29 Javascript
CKEditor4配置与开发详细中文说明文档
2018/10/08 Javascript
使用jquery的cookie实现登录页记住用户名和密码的方法
2019/03/13 jQuery
js实现橱窗展示效果
2020/01/11 Javascript
[02:32]DOTA2英雄基础教程 祸乱之源
2013/12/23 DOTA
Python遍历zip文件输出名称时出现乱码问题的解决方法
2015/04/08 Python
wxPython使用系统剪切板的方法
2015/06/16 Python
python通过socket查询whois的方法
2015/07/18 Python
对numpy中轴与维度的理解
2018/04/18 Python
python切片及sys.argv[]用法详解
2018/05/25 Python
python如何以表格形式打印输出的方法示例
2019/06/21 Python
解决python多行注释引发缩进错误的问题
2019/08/23 Python
用Python写一个自动木马程序
2019/09/17 Python
Python3直接爬取图片URL并保存示例
2019/12/18 Python
Python unittest 自动识别并执行测试用例方式
2020/03/09 Python
CSS3 @font-face属性使用指南
2014/12/12 HTML / CSS
激光脱毛、蓝光和护肤:Tria Beauty
2019/03/28 全球购物
2014的自我评价
2014/01/13 职场文书
企业内控岗位的职责
2014/02/07 职场文书
你对自己的信用报告有过了解吗?
2019/07/09 职场文书
四年级作文之说明文作文
2019/10/14 职场文书
Win10开机修复磁盘错误怎么跳过?Win10关闭开机磁盘检查的方法
2022/09/23 数码科技