2013-02-23 54 views
0

我使用的是CakePHP 2.3.0,我需要能够在我的应用程序(从控制器和模型)到处使用对象(Logger)。CakePHP:访问AppController从Model

该对象在AppController中创建这样的:

<?php 
App::uses('Controller', 'Controller'); 
App::uses('Logger', 'Lib'); 

class AppController extends Controller { 
    public function beforeFilter(){ 
     $this->Logger = new Logger(APP.'webroot/logs'); 
    } 
} 
?> 

这工作正常控制器,我可以使用这个对象从应用程序的每个控制器,这样:$this->Logger->...

但很明显,它不适用于模型(因为模型不扩展AppController)。

所以我需要:

  1. 知道如何从一个模型
  2. 或另一种方式来实现这一目标(创建访问无处不在全局对象)访问控制器属性(记录仪),不使用AppController->beforeFilter()

感谢

回答

0

说穿了你在做什么是绝对的废话。请阅读cakephp手册中关于logging的章节,了解如何配置日志流以及如何写入它们。