BinaryFileResponse
class BinaryFileResponse extends Response
BinaryFileResponse represents an HTTP response delivering a file.
Methods
__construct(SplFileInfo|string $file, int $status = 200, array $headers = array(), bool $public = true, string $contentDisposition = null, bool $autoEtag = false, bool $autoLastModified = true) | ||
static BinaryFileResponse | create(SplFileInfo|string $file = null, int $status = 200, array $headers = array(), bool $public = true, null|string $contentDisposition = null, bool $autoEtag = false, bool $autoLastModified = true) | |
$this | setFile(SplFileInfo|string $file, string $contentDisposition = null, bool $autoEtag = false, bool $autoLastModified = true) Sets the file to stream. | |
File | getFile() Gets the file. | |
setAutoLastModified() Automatically sets the Last-Modified header according the file modification date. | ||
setAutoEtag() Automatically sets the ETag header according to the checksum of the file. | ||
$this | setContentDisposition(string $disposition, string $filename = '', string $filenameFallback = '') Sets the Content-Disposition header with the given filename. | |
prepare(Request $request) {@inheritdoc} | ||
sendContent() Sends the file. | ||
setContent($content) {@inheritdoc} | ||
false | getContent() {@inheritdoc} | |
static | trustXSendfileTypeHeader() Trust X-Sendfile-Type header. | |
$this | deleteFileAfterSend(bool $shouldDelete) If this is set to true, the file will be unlinked after the request is send Note: If the X-Sendfile header is used, the deleteFileAfterSend setting will not be used. |
Details
__construct(SplFileInfo|string $file, int $status = 200, array $headers = array(), bool $public = true, string $contentDisposition = null, bool $autoEtag = false, bool $autoLastModified = true)
Parameters
SplFileInfo|string | $file | The file to stream |
int | $status | The response status code |
array | $headers | An array of response headers |
bool | $public | Files are public by default |
string | $contentDisposition | The type of Content-Disposition to set automatically with the filename |
bool | $autoEtag | Whether the ETag header should be automatically set |
bool | $autoLastModified | Whether the Last-Modified header should be automatically set |
static BinaryFileResponse create(SplFileInfo|string $file = null, int $status = 200, array $headers = array(), bool $public = true, null|string $contentDisposition = null, bool $autoEtag = false, bool $autoLastModified = true)
Parameters
SplFileInfo|string | $file | The file to stream |
int | $status | The response status code |
array | $headers | An array of response headers |
bool | $public | Files are public by default |
null|string | $contentDisposition | The type of Content-Disposition to set automatically with the filename |
bool | $autoEtag | Whether the ETag header should be automatically set |
bool | $autoLastModified | Whether the Last-Modified header should be automatically set |
Return Value
BinaryFileResponse |
$this setFile(SplFileInfo|string $file, string $contentDisposition = null, bool $autoEtag = false, bool $autoLastModified = true)
Sets the file to stream.
Parameters
SplFileInfo|string | $file | The file to stream |
string | $contentDisposition | |
bool | $autoEtag | |
bool | $autoLastModified |
Return Value
$this |
Exceptions
FileException |
File getFile()
Gets the file.
Return Value
File | The file to stream |
setAutoLastModified()
Automatically sets the Last-Modified header according the file modification date.
setAutoEtag()
Automatically sets the ETag header according to the checksum of the file.
$this setContentDisposition(string $disposition, string $filename = '', string $filenameFallback = '')
Sets the Content-Disposition header with the given filename.
Parameters
string | $disposition | ResponseHeaderBag::DISPOSITIONINLINE or ResponseHeaderBag::DISPOSITIONATTACHMENT |
string | $filename | Optionally use this UTF-8 encoded filename instead of the real name of the file |
string | $filenameFallback | A fallback filename, containing only ASCII characters. Defaults to an automatically encoded filename |
Return Value
$this |
prepare(Request $request)
{@inheritdoc}
Parameters
Request | $request |
sendContent()
Sends the file.
{@inheritdoc}
setContent($content)
{@inheritdoc}
Parameters
$content |
Exceptions
LogicException | when the content is not null |
false getContent()
{@inheritdoc}
Return Value
false |
static trustXSendfileTypeHeader()
Trust X-Sendfile-Type header.
$this deleteFileAfterSend(bool $shouldDelete)
If this is set to true, the file will be unlinked after the request is send Note: If the X-Sendfile header is used, the deleteFileAfterSend setting will not be used.
Parameters
bool | $shouldDelete |
Return Value
$this |
© 2004–2017 Fabien Potencier
Licensed under the MIT License.
http://api.symfony.com/4.0/Symfony/Component/HttpFoundation/BinaryFileResponse.html