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