3

在控制器内部有一个全局变量的方法是什么?

我曾尝试使用 beforeFilter 来做到这一点,但其他功能无法访问它。

只能使用Configure::read和完成吗Configure::write

4

1 回答 1

16

您可以在 AppController 的任何控制器中设置可访问的变量

class AppController extends Controller {
    public $myGlobalVar;  

    public function beforeFilter()
    {
         //this can be anything array, object, string, etc .....
         $this->myGlobalVar = "test2";
    }
 }

然后在您的另一个控制器中,您可以像这样在任何地方访问变量

class TestController extends AppController {

    public function index() {

        debug($this->myGlobalVar);
    }
}
于 2012-09-28T11:21:12.607 回答