我需要在我的另一个控制器中使用控制器功能。但我不想做
$Myother = new MyotherController();
每次我使用该控制器中的方法时。我怎样才能初始化一个控制器,这样我就不会在每个方法中都创建一个“新”?
我找到了这个,它是这样写的:
App::import('Controller', 'Pages');
class UsersController extends AppController {
var $Pages;
function beforeFilter() {
$this->Pages =& new PagesController; /*Loads the class*/
$this->Pages->constructClasses(); /*Loads the model associations, components, etc. of the Pages controller*/
}
function index() {
$this->Pages->index();
}
}
这是正确的方法,还是有更好的方法?