我创建了一个HTML表,使用PHP从目录中读取和列出文件。这些文件的文件名中包含时间戳(如果有帮助,它们会自动从游戏服务器上传记录)。我已经格式化了这些时间戳,因此它根据这种格式打印/回显它们,例如:
" 2018-04-29 20:45"
目前,所有行现在都以随机顺序列出。它使它非常混乱,因为许多人知道哪些文件是最新的是必不可少的。我希望最新的项目/时间戳列在顶部。我该如何以最简单有效的方式做到这一点?我浏览过StackOverflow并且只设法找到专注于SQL列表的问题。
这是代码的一部分:
<tbody>
<?php
*/Bunch of declaring, specifying paths etc, taking parts of strings, nothing related to the issue*/
while (($file = readdir($dh)) !== false) {
*/Bunch of declaring, specifying paths etc, taking parts of strings, nothing related to the issue*/
}
if($file != "." && $file != "download.svg" && $file != ".." && $file != "index.php" && $file != ".htaccess" && $file != "Logo.png" && $file != "error_log" && $file != "cgi-bin") {
echo "<tr class='pure-table-odd'>
<td>$i</td>
<td>$date3 $timestamp3</td>
<td>$map</td>
<td>$demosize</td>
<td>
<a href='$dlpath/$file'><img class='download' src='download.svg' alt='Download'></a>
</td>
</tr>";
$i++;
}
}
closedir($dh);
?>
</tbody>
一些澄清:它为列出的每个文件创建一个新行(.dem文件)
编辑: 有人提到使用过scandir(),但我对如何使其适应代码毫无头绪。当涉及到php
时仍然是一个新手答案 0 :(得分:1)
您可以使用javascript来执行此任务,例如调用javascript函数进行排序(如图here所示),但这太繁琐了。
对表进行排序的更好方法是使用已经为我们提供此功能的外部资源。
点击链接,它提供了一个示例说明。
答案 1 :(得分:0)