Symfony BinaryFileResponse set filename filename
2022-08-30 19:01:28
当 Symfony2 控制器使用 BinaryFileResponse 响应返回文件时,是否可以设置自定义文件名?
当 Symfony2 控制器使用 BinaryFileResponse 响应返回文件时,是否可以设置自定义文件名?
是的。该类具有一个方法,该方法将文件名作为第二个参数。BinaryFileResponse
setContentDisposition()
第一个参数是文件的传递方式。如果应该提供文件以供下载,则可以(或仅字符串),或者(或)如果您希望在浏览器中显示文件(例如,您可能希望对图像执行此操作),则可以是(或仅字符串)。ResponseHeaderBag::DISPOSITION_ATTACHMENT
"attachment"
ResponseHeaderBag::DISPOSITION_INLINE
"inline"
完整的代码示例:
<?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'
);