0

I have two controller classes in my codeigniter application, say class A and B.I just want to create an object of class A and access the functions declared in class A from class B.Something like:-

class A extends someclass
{
public function function1(){

$this->load->view('welcome_message');  
}       
}
}

class B extends someclass2
{
protected $object;
public function __construct()
{
parent::__construct();

$this->objectA = new A();
}       
}
}

I want to access the function function1 from class B using the object objectA. How can i do this? Please help. Thanks

4

2 回答 2

1

实际上这不是codeigniter中的正确方法。实际上,当您有常用功能并且想在 2 个或更多控制器中使用它们时。最好的方法是在核心文件夹中创建名为 MY_Contoller 的基本控制器并从 CI_Contoller 扩展它。在 MY_Contoller 中编写您的常用函数。现在您必须从 MY_Contoller 而不是 CI_Contoller 扩展所有控制器。你可以对模型做同样的事情。

于 2013-07-12T10:43:22.297 回答
0

跨控制器访问违反 CI 最佳实践。

要么从拥有这个通用功能的控制器继承两个控制器(不要忘记在函数前加上'_',这样它就不能通过 url 路由访问),或者创建一个包含可重用功能的库。助手也可以工作。

于 2013-07-12T10:46:21.473 回答