我可以从 Symfony2 的容器中到达“/web”路径吗?
Can I reach "/web" path from within a container in Symfony2?
我需要在 /web/import
路径中保存一个文件,我想知道哪种方法是实现此目的的最佳方法。我在 /Service/SyncController.php
中定义了一个 class,它从 Controller
延伸:
class SyncController extends Controller { ... }
class 也定义为服务:
sync.service:
class: PDI\PDOneBundle\Service\SyncController
arguments: ["@service_container", "@doctrine.orm.entity_manager", "@request_stack", "%kernel.root_dir%"]
我是否需要传递参数 "%kernel.root_dir%"
才能以 $this->webRoot = realpath($rootDir . '/../web')
的形式访问 Web 路径,或者我可以从 @service_container
传递?为了在其中保存文件,获取 /web/import
路径的正确方法是什么?
我们使用此配置来执行此操作。
在parameters.yml
upload_path: "/images/uploads"
upload_dir: "%kernel.root_dir%/../web%upload_path%"
为了便于阅读,我们将路径与目录分开。
在控制器中:
$work_dir = $this->container->getParameter('upload_dir');
我需要在 /web/import
路径中保存一个文件,我想知道哪种方法是实现此目的的最佳方法。我在 /Service/SyncController.php
中定义了一个 class,它从 Controller
延伸:
class SyncController extends Controller { ... }
class 也定义为服务:
sync.service:
class: PDI\PDOneBundle\Service\SyncController
arguments: ["@service_container", "@doctrine.orm.entity_manager", "@request_stack", "%kernel.root_dir%"]
我是否需要传递参数 "%kernel.root_dir%"
才能以 $this->webRoot = realpath($rootDir . '/../web')
的形式访问 Web 路径,或者我可以从 @service_container
传递?为了在其中保存文件,获取 /web/import
路径的正确方法是什么?
我们使用此配置来执行此操作。
在parameters.yml
upload_path: "/images/uploads"
upload_dir: "%kernel.root_dir%/../web%upload_path%"
为了便于阅读,我们将路径与目录分开。
在控制器中:
$work_dir = $this->container->getParameter('upload_dir');