2013-01-11 24 views
0

在我的申请,我已经设置类似配置的变量在core.php中如在根目录文件读取配置变量

core.php中

$websetting = array(
    'mydomain' => $_SERVER['HTTP_HOST'], 
    'adminEmail' => '[email protected]', 
    'supportEmail' => '[email protected]', 
    'infoEmail' => '[email protected]', 
    'accountEmail' => '[email protected]', 
    'facebook' => 'facebook.com/xyz', 
    'twitter' => 'twitter.com/@xyz' 
); 

Configure::write('WebsiteSetting', $websetting); 

现在我创建一个morning.php在webroot中的cj文件。所以我的路径是这样的:webroot/cj/morning.php

在morning.php我试着读Configure::read('WebsiteSetting.mydomain')

<?php 
echo Configure::read('WebsiteSetting.mydomain'); 
?> 

发生了什么事:

+0

使用框架。创建一个你想要的控制器/动作/视图。不要试图发明一些东西。没有快速简单的方法来实现这一点,并且可以通过“正确”方式轻松实现。 – Ross

回答

0

在你的控制器中的变量设置为你的看法......

控制器:

$this->set('mydomain', Configure::read('WebsiteSetting.mydomain')); 

查看:

echo $mydomain; 

如果用于设置v的布局易于从beforeFilter或beforeRender

+0

这个文件是在webroot/cj/morning.php.it没有控制器和布局。 – chetanspeed511987

+0

你为什么想要绕过Cake的MVC?通过简单地为其创建控制器和操作,可以将遗留代码包含到Cake应用程序中。 –

+0

它是如何绕过Cake的模式,我只是解释了如何将一个变量从控制器传递到视图。 – Happy

4

你为什么要那样做? 你的webroot中的morning.php文件完全没有关于蛋糕的信息。 您需要复制index.php并修改它(删除调度),以便在尝试使用Cake等蛋糕功能之前包含所有蛋糕内容。

您究竟想要达到什么目的? 使用正常的控制器/动作的东西来创建你的页面 - 不管它是什么上下文。

+0

谢谢,我正在修改项目,我尝试进行全局设置。我知道这是一个错误的方法。 – chetanspeed511987