【发布时间】:2014-01-04 10:37:01
【问题描述】:
我想在 cakephp 中定义一个可以从任何地方(即模型、控制器、组件等)访问的变量,而无需使用会话。如何在 cakephp 中实现这一点,有什么建议吗?
【问题讨论】:
标签: cakephp
我想在 cakephp 中定义一个可以从任何地方(即模型、控制器、组件等)访问的变量,而无需使用会话。如何在 cakephp 中实现这一点,有什么建议吗?
【问题讨论】:
标签: cakephp
您可以在app/Config/bootstrap.php 中定义常量,但更好的解决方案是使用Configure::write();
例如,如果您想在任何地方读取某个变量,可以通过以下方式将其设置在 bootstrap.php 文件 (app/Config/) 或您的 AppController.php (app/Controllers) 中:
Configure::write('variable_name', 'variable_value');
并通过以下方式在任何地方阅读:
Configure::read('variable_name');
【讨论】:
Configure::write()比const或define()“更好”?
我在 app/Config/app.php 创建了一个应用程序特定的配置文件,如下所示:
<?php
$config = array(
'App' => array(
'name' => 'My App Name'
)
);
然后通过在我的 app/Config/bootstrap.php 文件中包含以下行,将它包含在我的 CakePHP 应用程序中:
Configure::load('app');
这为我提供了一个文件,其中包含我所有应用程序特定的配置设置,而无需在我的代码库中添加Configure::write() 调用。
【讨论】: