2

我已经编写了代码来使用 php 上传不同类型的文件,并且我将它们的位置信息和日期保存在数据库表中。我进行了查询以显示我已上传的文件列表...并在 html 页面上生成如下输出

1.uploads/clouds.png
date and time

2.uploads/resume.pdf
dare and time

.......so on

是否有任何不同的方式来按文件类型显示它们,就像操作系统一样......或任何更好的方式......我很想知道......感谢您的帮助......

4

3 回答 3

0

如果要按文件类型分类,请使用finfo::file

这是示例如何获取 mime 类型的文件

<?php
$finfo = finfo_open(FILEINFO_MIME_TYPE); // return mime type ala mimetype extension
foreach (glob("*") as $filename) {
    echo finfo_file($finfo, $filename) . "\n";
}
finfo_close($finfo);
?>
于 2012-09-04T09:40:26.250 回答
0
  1. 为您的类型创建数组

  2. 从您所做的 db 查询中创建一个包含所有文件名的数组

  3. 循环遍历您的文件名数组(第 2 点),匹配某个文件类型,例如 png,并将找到的结果放在 pngs 数组中(.png 上的字符串匹配检查)。

  4. 循环遍历您的文件名数组(第 2 点),匹配某个文件类型,例如 jpg 并将找到的结果放入 jpgs 数组(.jpg && .jpeg 上的字符串匹配检查)。

  5. ETC

  6. 循环遍历您的数组 foreach,将它们放入一个新的最终数组中,例如 outputList 数组

  7. 循环遍历你的最终数组(按文件类型排序)html。对于 $outputList echo 等中的每个 $item

php中有一些方法可以匹配数组,但不确定您是否可以决定处理输出,所以简单是最好的。

于 2012-09-04T09:43:25.017 回答
0

这是生成文件列表的一个很好的脚本: http ://www.evoluted.net/thinktank/web-development/php-directory-listing-script

我还建议你学习phpglob函数。可以这样使用:

foreach(glob("directory/*.pdf") as $pdfdocument)   
    {  
    echo "<a href=\"$pdfdocument\">Link to $pdfdocument</a>"; 
    } 

这将生成指向目录中所有 PDF 文件的链接。

于 2012-09-04T09:59:28.517 回答