有没有办法从服务器上显示的文件名提供不同的文件名?

时间:2014-02-05 16:47:31

标签: php

我有一个系统,用于保存某些表行的文件(附件)。这意味着文件名有时可能相同。我正试图找到一种方法来存储文件,以后我可以查找行ID,文件名或文件ID,并提供该文件下载。

我有以下想法。

  1. 对于每一行,我将创建一个文件夹,在每个行文件夹中,我将创建另一个带有文件ID的文件夹,然后在其中保存文件。现在问题在于处理目录,有时权限也可能是个问题。

  2. (我更喜欢这个方法)有1个包含所有文件的文件夹,文件名将由行id,文件ID和文件名组成。

  3. 我的问题是假设我使用了方法2,文件名如下:12212.18.this is file name.jpeg

    有没有办法让我像这样提供这个文件:这是文件name.jpeg ?

    如果有3/4方法,你可以想到更好。会很棒的。

    感谢。

2 个答案:

答案 0 :(得分:3)

使用PHP打开/读取文件,然后使用您想要的任何名称将其推送到浏览器。

header('Content-Disposition: attachment; filename="your_file_name.jpg');

您可能需要设置其他标头 - 例如内容类型 - 最好阅读@ http://us2.php.net/manual/en/function.header.php

答案 1 :(得分:0)

Content-Disposition header会让你这样做。但这是假设您要为用户提供下载和保存在硬盘上的文件。如果您只想提供要包含在网页上的图片,为什么还要为文件名烦恼呢?