针对17joys控制器的扩展

针对17joys控制器的扩展

在我们编写代码的时候,尽量要多考虑一些以后可能会附带的功能要求,为这些功能留下编写的余地,这样就能增加扩展性,我在查看ThinkPHP源码的时候发现,每次控制器初始化的时候都会去调用一个_initialize()方法,那我就思考,以后肯定会针对所有的控制器模块定义公共方法,所以我考虑扩展Action类,把这些公共方法都放进去,这就产生了CommonAction类。

CommonAction.class.php文件

<?php 
class CommonAction extends Action {
	function _initialize(){
		header("Content-Type:text/html; charset=utf-8");
	}
}
?>

之前的IndexAction类文件修改为

<?php 
class IndexAction extends CommonAction { //从CommonAction继续扩展继承
    public function index(){
        $this->display();
    }
}
?>

这样以后我就可以把更多的功能方法放到CommonAction类中,譬如权限验证等操作

【注】:ThinkPHP的Action类源码

39
40
41
42
43
44
45
46
public function __construct()
{
    //实例化视图类
   $this->view       = Think::instance('View');
    //控制器初始化
   if(method_exists($this,'_initialize'))
        $this->_initialize();
}

作者:马明@PHP培训 修订1.0 2010-03

乐学PHP学院是国内专业的PHP培训机构,天津最好的PHP培训机构,拥有完整全面的PHP培训课程体系,使用自行开发的PHP内容管理系统作为授课案例,真实项目教学,还提供PHP教程、PHP视频、PHP人才、PHP开发等服务!

本文乐学PHP版权所有,未经批准转载必究。

[@more@]

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/23714519/viewspace-1032846/,如需转载,请注明出处,否则将追究法律责任。

转载于:http://blog.itpub.net/23714519/viewspace-1032846/

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值