我的CakePHP应用程序有一个单独的配置文件,它加载在bootstrap.php中。我的问题是,我如何访问控制器中的配置变量?即,我如何在控制器中执行配置::读取("变量")功能?谢谢
在我的自定义配置文件/app/Config/myconfig.php
中,我定义了我的配置变量:
<?php
$config = array(
'variable' => 'myValue'
);
在我的操作中,我可以读取配置文件并访问变量:
Configure::load('myconfig', 'default');
$configValue = Configure::read('variable');
echo $configValue; // myValue
如下:
app/Config/example.php
<?php
$config = array(
'MyConf' => array(
'secret' => '1234',
)
);
在您的控制器中
Configure::load('example');
Configure::read('MyConf.secret');
在这里我找到了另一个好的解决方案。点击此处
创建自定义配置首先,在app/config
目录中创建一个文件,根据需要命名。
Example: my_app_settings.php
现在,在这个文件中,您可以使用$config
阵列添加任何您想要的设置
<?php
$config['MyApp']['mysql_user'] = 'bob';
$config['MyApp']['mysql_pass'] = 'foobar';
// etc etc
接下来,你需要告诉你的应用程序加载这个新的配置文件。我倾向于在bootstrap.php中这样做,以确保它在整个应用程序中加载(尽管如果有更好/更可取的地方,一定要让我知道)
<?php
// app/config/bootstrap.php
// snip
Configure::load('my_app_settings');
现在,在你的应用程序中的任何地方,你都可以访问你的自定义设置
<?php
$mysqlUser = Configure::read('MyApp.mysql_user');
请阅读文档。这里很好地解释了如何加载自定义配置文件:http://book.cakephp.org/2.0/en/development/configuration.html#loading-配置文件
默认情况下,如类本身所述,它会将其配置与已加载的配置合并。
Configure::read('variable')
然后加载新配置的内容(如果它覆盖了应用程序配置)。