Php 从文件夹回显文件

Php 从文件夹回显文件,php,arrays,directory,echo,Php,Arrays,Directory,Echo,我想制作一个MP3或音频页面,我想知道如何为从用户上传到文件夹的文件制作一个数组,然后作为可用的MP3或其他音频文件在页面上回响,最后上传的较新文件需要放在页面顶部。我有一个上传页面,可以将文件上传到一个文件夹,但就是这样。您好,您可以使用名为scandir的内置php函数,当您在参数中传递文件夹路径时,它将返回文件数组 例如: <?php $dir = '/tmp'; $files1 = scandir($dir); $files2 = scandir($dir, 1); pri

我想制作一个MP3或音频页面,我想知道如何为从用户上传到文件夹的文件制作一个数组,然后作为可用的MP3或其他音频文件在页面上回响,最后上传的较新文件需要放在页面顶部。我有一个上传页面,可以将文件上传到一个文件夹,但就是这样。

您好,您可以使用名为scandir的内置php函数,当您在参数中传递文件夹路径时,它将返回文件数组

例如:

<?php
$dir    = '/tmp';
$files1 = scandir($dir);
$files2 = scandir($dir, 1);

print_r($files1);
print_r($files2);
?>

我想会是这样的

$dir    = '/mp3s';
$files = scandir($dir);
foreach($files as $file) {
    if(preg_match('~\.(mp3|EXTEnSION)$~'. $file)) {
        echo '<a href="' . $dir . '/' . $file . '">'  . $file , '</a>';
    }
}
然后需要修改scandir函数。这根线似乎覆盖了那个


可以通过添加任何其他扩展来修改正则表达式,这些扩展由管道分隔。它区分大小写,如果您不想在波浪号后面添加“i”,则当前会在波浪号后面添加一个“i”。

您尝试过任何方法吗?是的,我尝试过,但它只会从文件中回显名称可能的重复项
$dir    = '/mp3s';
$files = scandir($dir);
foreach($files as $file) {
    if(preg_match('~\.(mp3|EXTEnSION)$~'. $file)) {
        echo '<a href="' . $dir . '/' . $file . '">'  . $file , '</a>';
    }
}