2012-07-11 97 views
4

我在使用多级继承时遇到了问题,如下所示。Codeigniter多级继承

我有一个扩展是CI_Controller类

class Application extends CI_Controller 
{ 
} 

名为“网站”和“管理”的控制器扩展了应用程序控制器

class Site extends Application 
{ 
} 

class Admin extends Application 
{ 
} 

最后类“用户”和顶级控制器'Guest'扩展'Site'控制器

class User extends Site 
{ 
} 

Class Guest extends Site 
{ 
} 

问题是,在User和Guest控制器我无法加载核心库,如分页,form_validation等使用

$ this-> load-> library('pagination);

但它工作时,我在网站控制器或应用程序控制器即加载库。控制器,用于扩展核心CI_Controller及其子控制器。当我尝试加载大孩子时,它不起作用。

有人可以澄清为什么会发生这种情况吗?谢谢...

回答

2

我还没有看到以前设置的多级构造函数类,但它应该工作。

你是否在每个类的构造函数中调用parent::__construct()

+0

是的,我打电话给他。唯一的问题是,我无法从盛大的孩子加载图书馆。 – 2012-07-11 12:04:23

0
//-Create MY_Controller.php on application/core/MY_Controller.php 
//contents of MY_Controller.php 
class Application extends CI_Controller{ 
    function __construct(){ 
     // Call the CI_Controller constructor 
     parent::__construct();   
    } 
} 
//that is all now you can inherit class (Application) anywhere in your project