如何在cakephp中的另一个控制器中调用控制器

时间:2014-12-22 09:09:15

标签: cakephp controller

我正在使用cakephp v2.6来开发一个Web应用程序。

是否可以在CAKEPHP中的另一个控制器内调用控制器。

执行相同的

是否正确?

在SecondController.php中

App::uses('FirstController','Controller');

class SecondController extends AppController
{
$firstcontrollerobject=$this->FirstController;
}

Thanqs

2 个答案:

答案 0 :(得分:1)

如果要在多个控制器之间共享

,请将PHP代码放入组件中
  

组件是控制器之间共享的逻辑包。 CakePHP带有一套出色的核心组件,可用于辅助各种常见任务。您还可以创建自己的组件。如果您发现自己想要在控制器之间复制和粘贴内容,则应考虑创建自己的组件以包含该功能。创建组件可以保持控制器代码的清洁,并允许您在项目之间重用代码。

http://book.cakephp.org/2.0/en/controllers/components.html

答案 1 :(得分:1)

简短回答是Yes,但你不应该。

您应该使用组件或模型。如果您希望其他控制器使用,请将您的操作放在AppController中。

App::uses('FirstController','Controller');

class SecondController extends AppController
{
    public function test() {
        $FirstController = new FirstController();
        $Firstcontroller->action();
    }

}