0

我正在尝试获取目录 (/music/category/) 中的 mp3 文件列表。然后我修剪目录,然后修剪mp3扩展名。

我遇到的一些文件的问题是,如果文件名以第 3 行字符串中的字母 a、u、d、i、o(音频)开头,它会修剪它们。

所以一首名为“awesome”的歌曲最终显示为“wesome”。

有谁知道这是为什么?

$files = glob('audio/' . $category . '/*.{mp3}', GLOB_BRACE);   
foreach($files as $file) {   
$title = trim($file, '/audio/' . $category . "/");  
$withoutExt = preg_replace("/\\.[^.\\s]{3,4}$/", "", $title);  
echo $withoutExt;
}
4

1 回答 1

1

我会这样做:

$it = new FilesystemIterator('audio/' . $category, FilesystemIterator::SKIP_DOTS);
foreach ($it as $fileinfo) {
    echo $fileinfo->getBasename('.mp3'). "\n";
}

或者:

$files = glob('audio/' . $category . '/*.{mp3}', GLOB_BRACE);
foreach($files as $file) {
    echo pathinfo($file, PATHINFO_FILENAME);
}
于 2013-09-24T12:46:37.063 回答