czy można ustawić własną nazwę pliku po zwróceniu pliku przez kontroler Symfony2 za pomocą odpowiedzi BinaryFileResponse?Symfony BinaryFileResponse ustawić nazwę pliku
8
A
Odpowiedz
22
Tak. Klasa BinaryFileResponse
ma metodę setContentDisposition()
, która przyjmuje nazwę pliku jako drugi argument.
Pierwszy argument to sposób, w jaki plik powinien zostać dostarczony. Może to być ResponseHeaderBag::DISPOSITION_ATTACHMENT
(lub tylko ciąg "attachment"
), jeśli plik powinien być oferowany do pobrania, lub ResponseHeaderBag::DISPOSITION_INLINE
(lub "inline"
), jeśli chcesz, aby plik był wyświetlany w przeglądarce (możesz to zrobić na przykład przy obrazach) .
pełny przykład kod:
<?php
use Symfony\Component\HttpFoundation\BinaryFileResponse;
use Symfony\Component\HttpFoundation\ResponseHeaderBag;
$response = new BinaryFileResponse('/path/to/myfile');
$response->setContentDisposition(
ResponseHeaderBag::DISPOSITION_ATTACHMENT,
'file_name.txt'
);
stosowanie '$ response-> headers-> zestaw (Content-Dyspozycja "sprintf ('mocowanie, nazwa pliku = "% s"' $ nazwa pliku)); ' –