繁体   English   中英

在发送给用户之前重命名文件?

[英]Rename file before sending to user?

这可能是一个非常简单和愚蠢的问题,但我不知道我会如何 go 这样做。

我正在为 PHP 中的客户端站点构建一些文件托管功能。 我在一个目录中有一个中央文件存储库。 这是因为如果多人上传同一个文件,客户端希望为每个文件保留一份副本(基于文件的“哈希”)。 文件在转储到此目录之前被重命名(日期时间 + 一些代码)以避免文件名冲突。 文件的原始名称保存在数据库中。

问题出在哪里,当用户请求下载文件时,我不知道如何将文件重命名为原始文件名? 我可以在另一个目录中创建它的临时副本,但我认为这会变得混乱。 我希望有更好的方法。 我看过另一个帖子

Response.AppendHeader("content-disposition", "attachment; filename='MyFile.jpg'"); 

但那是在 ASP 中。 谁能指出我正确的方向?

非常感谢

泰德

在 PHP 中它是相似的:参见header function

从该页面上的示例:

<?php
// We'll be outputting a PDF
header('Content-type: application/pdf');

// It will be called downloaded.pdf
header('Content-Disposition: attachment; filename="downloaded.pdf"');

// The PDF source is in original.pdf
readfile('original.pdf');
?>   

我不了解 ASP,但也许这篇文章可以让您了解它。

用 ASP 下载文件

以及一些关于它的参考ASP Response Object

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM