在php中获取具有特殊字符的文件名

时间:2017-01-10 09:42:33

标签: php character-encoding

我这样做:

$files = scandir('./data');
foreach($files as $file) {
    echo $file;
}

我也试过这个:

foreach (new DirectoryIterator('./music') as $fileInfo) {
    echo $fileInfo->getFilename();
}

它适用于大多数文件名,除了具有特殊字符的文件名,例如é或ø。输出将包含带问号的黑色钻石( )。我已经尝试了很多不同的方法来转换和转换为UTF-8,UTF-16,ISO-8859-1等。最后我意识到php必须输出一个 ,而不是显示它的浏览器因为它没有'知道这个角色是什么。

如何正确获取带有特殊字符的文件名?

如果可以,那就没关系éø转换为eo,只要我不丢失字符(géu - > gu)

0 个答案:

没有答案