Могу ли я добраться до пути "/web" из контейнера в Symfony2? [дубликат]
На этот вопрос уже есть ответ здесь:
Мне нужно сохранить файл по пути /web/import
, и я спрашиваю, какой лучший способ добиться этого. У меня есть класс, определенный в /Service/SyncController.php
, и он простирается от Controller
:
class SyncController extends Controller { ... }
Этот класс также определяется как услуга:
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')
, или я могу сделать это из @service_container
? Какой правильный способ получить путь к /web/import
, чтобы сохранить там файлы?
3
1 answers
Мы используем эту конфигурацию именно для этого.
В параметрах.yml
upload_path: "/images/uploads"
upload_dir: "%kernel.root_dir%/../web%upload_path%"
Мы разделили путь от dir просто для простоты чтения.
В контроллере:
$work_dir = $this->container->getParameter('upload_dir');
2
Author: DevDonkey, 2015-06-23 15:03:52