草庐IT

PHP Symfony2 : Delete a temp file after response

coder 2024-04-30 原文

我有一个生成图像并在响应中返回图像的 Controller 。

use FOS\RestBundle\Controller\Annotations as Rest;
use Symfony\Component\HttpFoundation\BinaryFileResponse;

...

/**
 * @Rest\Get("/image/{name}")
 */
public function getImage($name) {
    $imageService = $this->get('image.service');
    $tempImage = $imageService->genImage($name);
    return new BinaryFileResponse($tempImage);
}

这很好用,但临时图像永远不会被删除。

发送响应后如何删除临时图像?

最佳答案

我阅读了 BinaryFileResponse 的实现。原来有一个公共(public)方法 deleteFileAfterSend

我只需要

return (new BinaryFileResponse($tempImage))->deleteFileAfterSend(true);

关于PHP Symfony2 : Delete a temp file after response,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43661827/

有关PHP Symfony2 : Delete a temp file after response的更多相关文章

随机推荐