class FlysystemFileResponse extends Response (View source)

Heavily based on BinaryFileResponse represents an HTTP response delivering a file.

Properties

static protected $trustXSendfileTypeHeader
protected File $file
protected FilesystemInterface $filesystem
protected $offset
protected $maxlen

Methods

__construct(File $file, FilesystemInterface $filesystem, int $status = 200, array $headers = array(), bool $public = true, null|string $contentDisposition = null, bool $autoEtag = false)

Constructor.

static BinaryFileResponse
create(SplFileInfo|string $file = null, int $status = 200, array $headers = array(), bool $public = true, null|string $contentDisposition = null, bool $autoEtag = false)

No description

BinaryFileResponse
setFile(SplFileInfo|string $file, string $contentDisposition = null, bool $autoEtag = false)

Sets the file to stream.

File
getFile()

Gets the file.

setAutoEtag()

Automatically sets the ETag header according to the checksum of the file.

BinaryFileResponse
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.

Details

__construct(File $file, FilesystemInterface $filesystem, int $status = 200, array $headers = array(), bool $public = true, null|string $contentDisposition = null, bool $autoEtag = false)

Constructor.

Parameters

File $file The file to stream
FilesystemInterface $filesystem The filesystem instance to get info with
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

static BinaryFileResponse create(SplFileInfo|string $file = null, int $status = 200, array $headers = array(), bool $public = true, null|string $contentDisposition = null, bool $autoEtag = false)

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

Return Value

BinaryFileResponse The created response

BinaryFileResponse setFile(SplFileInfo|string $file, string $contentDisposition = null, bool $autoEtag = false)

Sets the file to stream.

Parameters

SplFileInfo|string $file The file to stream
string $contentDisposition
bool $autoEtag

Return Value

BinaryFileResponse

Exceptions

FileException

File getFile()

Gets the file.

Return Value

File The file to stream

setAutoEtag()

Automatically sets the ETag header according to the checksum of the file.

BinaryFileResponse setContentDisposition(string $disposition, string $filename = '', string $filenameFallback = '')

Sets the Content-Disposition header with the given filename.

Parameters

string $disposition ResponseHeaderBag::DISPOSITION_INLINE or ResponseHeaderBag::DISPOSITION_ATTACHMENT
string $filename Optionally use this 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

BinaryFileResponse

prepare(Request $request)

{@inheritdoc}

Parameters

Request $request

sendContent()

Sends the file.

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.