php:使用readdir获取文件信息


php: Get file information with readdir

我正在使用这段代码来获取目录中的音频文件列表。

if ($handle = opendir($directory_url)) {
    while (false !== ($entry = readdir($handle))) {
        if ($entry != "." && $entry != "..") {
            $ext = pathinfo($entry, PATHINFO_EXTENSION);
            $audio_ext = array('mpeg', 'ogg', 'wav', 'webm', 'mp3');
            if(in_array(strtolower($ext),$audio_ext)) {
                echo $entry;
            }
        }
    }
}

我还想阅读文件的其他相关信息,如标题,专辑,如果可能的话,音轨的长度。我搜索了文件系统函数:http://www.w3schools.com/php/php_ref_filesystem.asp.但找不到解决方案。

有人能帮我吗?

附加信息以不同的方式存储在不同的文件类型中。

例如:mp3使用"id3"标签来保存标题、专辑等信息

如果你想读取id3数据,你可以简单地做这样的事情:

<?php
// will return an array
$tag = id3_get_tag( "example.mp3", ID3_V2_3 );
?>

$tag将是ID3信息的阵列。函数的第二个参数是文件使用的ID3版本。要获得特定文件的ID3标记的版本,可以使用函数id3_get_version("example.mp3")

在官方PHP文档中查找更多信息http://php.net/manual/en/function.id3-get-version.php