Cakephp AppController与组件

Cakephp AppController与组件,cakephp,components,controllers,Cakephp,Components,Controllers,我有一组在所有控制器之间共享的函数,我怀疑是否应该将它们放在一个组件中,从每个控制器(或从AppController)加载,或者将它们添加到AppController类中(可见性设置为受保护的),以便所有控制器都继承它们 哪个更好?我建议创建一个组件。组件是惰性加载的,并且有助于保持代码的整洁。此外,在需要访问某种模型数据的用例中,您不希望加载模型并从AppController调用它们 更不用说,您的项目可能会扩展到一些不需要它的控制器——您永远不知道。这有点离题,但它如何在组件的延迟加载中工作

我有一组在所有控制器之间共享的函数,我怀疑是否应该将它们放在一个组件中,从每个控制器(或从AppController)加载,或者将它们添加到AppController类中(可见性设置为
受保护的
),以便所有控制器都继承它们


哪个更好?

我建议创建一个组件。组件是惰性加载的,并且有助于保持代码的整洁。此外,在需要访问某种模型数据的用例中,您不希望加载模型并从AppController调用它们

更不用说,您的项目可能会扩展到一些不需要它的控制器——您永远不知道。这有点离题,但它如何在组件的延迟加载中工作?我是说,我该叫什么?执行
$this->ComponentName->function()
显然会出错。组件是否已加载?ComponentName::function()可以工作吗?