在app_controller.php中加载Session,Auth组件。
在posts_controller.php中,我使用CustomComponent和$ components = array('Session','Auth');
那么CustomComponent必须重新加载Session,Auth组件吗?
如果我使用并创建了很多组件,那些组件会使用其他组件。它会让app变得非常慢吗?
我在cakephp IRC中问过,一个人回答不是:
[11:05]它不会很慢,我相信它会通过参考传递那些
[11:05]所以你无需担心
答案 0 :(得分:5)
假设您要将BComponent导入AComponent。
在aComponent
class AComponent extends Component {
public $components = array('BComponent');
public function xyz(){
$test = $this->BComponent->abc($name);
echo $test;
}
}
BComponent
class BComponent extends Component {
public function abc($name){
return "My name is: ". $name;
}
}
答案 1 :(得分:3)
是的,它必须是$components = array('Session','Auth','Custom');
或者您可以使用:App::import('Component', 'Custom');$Custom = new CustomComponent();
Then do CustomComponent must reload Session, Auth components?
如果你不在CustomComponent类中使用Session或Auth,那么没有。
It will make app is very slow?
不,除非你使用了很多组件。