如何使用PHP列出服务器上各种音频文件的文件名和持续时间

如何使用PHP列出服务器上各种音频文件的文件名和持续时间,php,audio,ffmpeg,Php,Audio,Ffmpeg,我有一个文件夹,里面放满了音频文件,其中大部分是wma、mp3、wav,还有一些模糊的文件,比如DS2和aiff,放在VPS上。文件夹每天都在更新 我正在使用apache和MYSQL运行一个基于php的网站 我是否可以提取或以某种方式显示音频文件列表以及每个文件的持续时间 理想情况下,我需要一个解决方案,允许一个相对非技术人员每天提取数据。因此,我正在考虑通过php文件显示数据?要获得MP3的持续时间,您必须使用自定义类,因为php没有内置函数来实现这一点,我建议您使用以下函数: 之后,您必须获

我有一个文件夹,里面放满了音频文件,其中大部分是wma、mp3、wav,还有一些模糊的文件,比如DS2和aiff,放在VPS上。文件夹每天都在更新

我正在使用apache和MYSQL运行一个基于php的网站

我是否可以提取或以某种方式显示音频文件列表以及每个文件的持续时间


理想情况下,我需要一个解决方案,允许一个相对非技术人员每天提取数据。因此,我正在考虑通过php文件显示数据?

要获得MP3的持续时间,您必须使用自定义类,因为php没有内置函数来实现这一点,我建议您使用以下函数:

之后,您必须获取文件夹中的所有MP3,并显示名称和持续时间:

require_one("mp3file.class.php");

if ($handle = opendir($dir)) { // $dir = your directory path
    while (false !== ($file = readdir($handle))) {
    $mp3file = new MP3File($file);
    $duration1 = $mp3file->getDurationEstimate();//(faster) for CBR only
    $duration2 = $mp3file->getDuration();//(slower) for VBR (or CBR)
        echo $file." - ". MP3File::formatTime($duration2)."\n"; // $duration1 for faster perfs
    }
    closedir($handle);
}

谢谢,那很有用。我想知道是否有类似的课程涵盖更多的音频格式?我的标题不准确。我不只是在寻找mp3,还有其他格式。因此它不是复制品。问题还包括如何批量解析数据。