我的CakePHP应用程序有一个单独的配置文件,它在bootstrap.php中加载。我的问题是,如何在Controller中访问Configuration的变量?即如何在Controller中执行Configure :: read('variable')函数?谢谢!
答案 0 :(得分:3)
应用程序/配置/使用example.php
<?php
$config = array(
'MyConf' => array(
'secret' => '1234',
)
);
控制器中的
Configure::load('example');
Configure::read('MyConf.secret');
答案 1 :(得分:3)
在我的自定义配置文件/app/Config/myconfig.php
中,我定义了我的配置变量:
<?php
$config = array(
'variable' => 'myValue'
);
在我的Action中,我读过可以读取配置文件并获取变量的访问权限:
Configure::load('myconfig', 'default');
$configValue = Configure::read('variable');
echo $configValue; // myValue
答案 2 :(得分:2)
请阅读文档。 在那里很好地解释了如何加载自定义配置文件: http://book.cakephp.org/2.0/en/development/configuration.html#loading-configuration-files
默认情况下,如类本身所述,它会将其配置与已加载的配置合并。
Configure::read('variable')
然后加载新配置的内容,如果它覆盖了应用程序。
答案 3 :(得分:2)
我在这里找到了另一个很好的解决方案。click here
创建自定义配置
首先,在您想要的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');