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