我在使用多级继承时遇到问题如下。
我有一个扩展CI_Controller类的顶级控制器
class Application extends CI_Controller
{
}
名为' Site'和'管理员'将应用程序控制器扩展为
class Site extends Application
{
}
class Admin extends Application
{
}
最后上课'用户'和'访客'扩展'网站'控制器
class User extends Site
{
}
Class Guest extends Site
{
}
问题是,在User和Guest控制器中,我无法使用
加载分页,form_validation等核心库。$这 - >负载>库('页码);
但是当我在站点控制器或应用程序控制器中加载库时,它可以工作。扩展核心CI_Controller及其子控制器的控制器。当我试图加载大孩子时,它不起作用。
有人可以澄清为什么会这样吗?感谢...
答案 0 :(得分:2)
我之前没有看过设置过多级构造函数的类,但它应该可以工作。
您是否在每个类的构造函数中调用parent::__construct()
?
答案 1 :(得分:1)
结帐CodeIgniter Base Controllers,包含说明。
答案 2 :(得分: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