php - 如何从 Controller 内部获取 Symfony2 中 web 目录的服务器路径?

标签 php symfony

问题如下:

如何从 Controller 内部(或因此从其他任何地方)获取 Symfony2 中 web 目录的服务器路径

我已经找到的(也可以在这里搜索):

这在关于 Doctrine 文件处理的食谱文章中有所建议

$path = __DIR__ . '/../../../../web';

四处寻找,只能在 Controller 内部使用(或注入(inject)内核的服务):

$path = $this->get('kernel')->getRootDir() . '/../web';

那么,绝对没有办法至少获得路径的“网络”部分吗?例如,如果我决定重命名或移动或其他什么?

在第一个 symfony 中一切都很容易,当我可以通过调用静态 sfConfig::get() 方法从代码中的任何位置获得所需的一切时......

最佳答案

在 Symfony2 中实际上没有直接的方法来获取 webdir 的路径,因为该框架完全独立于 webdir。

您可以在内核类的实例上使用 getRootDir(),就像您编写的那样。如果您考虑将来重命名 /web 目录,则应使其可配置。例如 AsseticBundle 在其 DI 配置中有这样一个选项(参见 herehere )。

关于php - 如何从 Controller 内部获取 Symfony2 中 web 目录的服务器路径?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9265788/

相关文章:

symfony - 相当于 Symfony 上的 Laravel Seeders?

php - Symfony2表单提交后始终为空

php - 未捕获的异常 : Syntax error

symfony - 当通过 Composer 包含时如何在 AdminLTE 中使用 jQuery 的输入掩码

php - 从 Symfony 2 AbstractType 获取表单字段

javascript - 将 MySQL 查询结果转换为分层数据 - D3

php - Symfony:动态更改数据库

php - Laravel:第 342 行的非法字符串偏移量 'file',文件 Illuminate/Mail/Mailable.php

php - 如何在 PHP Mysql 中选择两个表进行比较并获取单个列值

PHP 表单验证错误消息放置