CakePHP 3:遍布各处的全局变量

时间:2016-06-29 19:46:25

标签: cakephp global-variables cakephp-3.x

我在CakePHP 3项目中工作,想要创建全局变量来存储可以在整个应用程序中使用的一些信息。

我必须存储公司信息,如姓名,标语,说明等,还有一些链接,例如,我使用主应用程序中的子域来存储媒体文件,如http://media.website.com,应用程序位于{ {1}}。现在我想将http://website.com存储在一个全局变量中,以便我可以在我的应用程序中的任何位置使用它,就像http://media.website.com一样。

为此,我尝试使用WWW_ROOT并尝试在Configure::write('mediaLink', 'http://media.website.com');视图中使用它,但它会将错误视为<img src="<?= Configure::read('mediaLink') . DS . 'files' . DS . 'image.jpg'">。我尝试将Class Configure is not found添加到控制器,但它会出现同样的错误。

1 个答案:

答案 0 :(得分:1)

制作一个单独的文件,说constants.php

在此处定义全局常量和Configure。 不要忘记将其添加到文件的顶部   use Cake\Core\Configure;

并通过撰写bootstrap.php

将此文件包含在require __DIR__ . DS.'constants.php';

更新: - 将文件constants.php放入application-root-folder\config