Symfony:从web文件夹中获取控制器中的文件

时间:2017-08-23 14:16:14

标签: php symfony

我想从控制器中的web文件夹中获取pdf文件,但无法弄清楚如何操作。

我试图获得这样的路径

// 1
$file = __DIR__ . '/../../../../web/1.pdf';  

// 2
$file = $this->get('kernel')->getRootDir().'\..\web\1.pdf';

// 3
$isSecure = $request->isSecure() ? 'https://' : 'http://';
$file = $isSecure . $request->getHost() . $this->container->get('assets.packages')->getUrl('1.pdf');

然后使用file controller helper但它没有用。

如何从公共目录中获取该文件?

1 个答案:

答案 0 :(得分:0)

试试这个 -

将此附加到autoload.php

define('APPLICATION_PATH', realpath(__DIR__) . '/');
define('WEB_PATH',  APPLICATION_PATH . '../web/');

您也可以添加其他文件夹

然后

file_get_content(WEB_PATH . 'your_file.pdf');

另一种方式 -

$path = $this->getParameter('dir.downloads');

但不要忘记在这个

上的parameters.yml上声明它
parameters:
    ....
    dir.downloads: var/www (your folder)
    ....