我在我的 Silex 应用程序中使用 Knp\Snappy\Pdf 生成一个 pdf。文件名是随机的,保存到 tmp 目录下。
$filename = "/tmp/$random.pdf"
$snappy->generate('/tmp/body.html', $filename, array(), true);
我认为在响应中返回 pdf,
$response = new Response(file_get_contents($filename));
$response->headers->set('Pragma', 'public');
$response->headers->set('Content-Type', 'application/pdf');
return $response;
pdf 正确显示在网络浏览器中。请求完成后,具有随机文件名的文件仍然存在。在返回响应之前,我无法取消链接文件。我尝试使用 register_shutdown_function 注册关闭功能并从那里取消链接文件。但是,这似乎不起作用。有任何想法吗?