在Symfony 2应用程序中获取应用程序根URL和目录名称

时间:2012-05-07 11:20:00

标签: symfony

我想知道两个系统的应用程序的根源,例如。用于文件上传的/var/www/app//app/。当我上传时,我相信我需要“系统”目录名,用于web前端的链接,我需要“相对”路径。我如何获得这些信息?

在之前的项目中,我在app*.php文件(前端控制器)中定义了常量

define('APP_ROOT', __DIR__);

不知道有没有更好的方式?

2 个答案:

答案 0 :(得分:16)

在任何ContainerAware课程中,您都可以通过

获取网络目录的位置
$this->container->get('kernel')->getRootdir().'/../web';

答案 1 :(得分:9)

如果容器不可用,您可以使用dependency injection:在服务配置中将%kernel.root_dir%设置为您班级的参数。