全局变量在symfony2中不起作用

时间:2014-02-05 12:01:47

标签: php symfony namespaces global

简单的问题是命名空间如何影响全局变量?请阅读其余部分以获取更多信息 我有一个工作网站在php.All链接地址是使用获取查询。(例如:example.com/?page = contact而不是example.com/contact.php).i已覆盖我的symfony中的超级全局变量控制器并配置route.so工作。 我的问题是全局变量。有一个主要的index.php文件,我已经包含在我的控制器(indexController)中,并且包含了网站的所有代码。但是全局变量不再起作用了(它们已经消失了) ).i认为这是因为控制器命名空间,但是在php文档中它声明命名空间不会影响变量。那么问题是什么呢?如果单独运行,index.php将生成预期结果但是这里我得到未声明的变量)  这将是我的代码:index.php使用HTML数据创建$ html

namespace example\exampleBundle\Controller

class indexController{
    function indexAction(Request $request){
        $request->overrideGlobals();
        include "/external/index.php";

        $response = new Response();
        $response->setContent($html);
        $response->setStatusCode(Response::HTTP_OK);
        $response->headers->set('Content-Type','text/html');
        return $response;
    }
}


------------------------
symfonytest:
     path: /
     defaults: {_controller: exampleexampleBundle:index:index}

1 个答案:

答案 0 :(得分:0)

我找到了原因。因为库被包含在一个函数(indexaction)中,所以它没有在全局范围内声明。我必须在包含的index.php中使用全局修饰符。我会报告结果。