午灬夏 发表于 2014-5-31 17:16:39

如何建立自己的基类控制器?

controllers/admin/index.php
后台首页,如何让他继承自定义的基类 ,让后台的所有控制器 extends AdminBase

controllers/index.php
前台首页,让前台的所有控制器 extends HomeBase


幸福糖 发表于 2014-6-3 11:00:33

你要使用CI框架,那么你的控制器就需要继承CI的控制器,而你希望要继承自定义的基类,这就涉及到了多继承,所以,如果你的php版本在5.4以上,貌似 php也能实现多继承了。如果你的php版本不是5.4以上的,你要么扩展CI的控制器基类,要么你把你自定义的基类当做一个library类,然后在你继承后分别在__construct()方法里面手动加载好了。也许还有更好的办法,期待大家的高见了。

57sy.com(隐身中 发表于 2014-6-11 16:15:32

基类继承与CI的基类 , 然后其他的控制权继承你自己的基类即可

wlyx 发表于 2014-6-12 09:36:29

application/core/MY_Controller.php

class MY_Controller extends CI_Controller{
//do something
}
class Front_Controller extends MY_Controller{
//for front controller
}
class Backend_Controller extends MY_Controller{
// for backend controller
}

peoong 发表于 2015-10-5 23:06:05

分文件写法是怎样的。上面两个自定义的类文件应该放在哪个目录下。

xudong7930 发表于 2015-10-29 16:18:46

@peoong,写在一个文件里面,我试过了,可以的
<?php
class MY_Controller extends CI_Controller {

        public function __construct() {
                parent::__construct();
        }


        public function test(){
                echo 111;
        }
}


class Front_Controller extends MY_Controller{

        public function __construct() {
                parent::__construct();
        }
}

huasun 发表于 2016-2-27 09:40:13

为什么可以类名可以使用不同的前缀的?MY_ControllerFront_Controller 。同一个文件可以定义多个类?
页: [1]
查看完整版本: 如何建立自己的基类控制器?