我的文件名是带格鲁吉亚字母的文件名,例如
დიადიგანთიადი。flv。
Scandir无法读取这些文件名,它显示为?????? ??.flv
。
我尝试过以下方法:
$array = scandir($folder);
foreach ($array as $file) {
//$file = iconv('WINDOWS-1252', 'UTF-8', $filename);
//$file = iconv('ISO-8859-1', 'UTF-8', $filename);
//$file = iconv('ISO-8859-15', 'UTF-8', $filename);
pr($file);
}
但它们都没有奏效,它仍然像????
。我也尝试将标题内容设置为utf-8但没有运气。有什么办法可以使用PHP正确读取这些文件名吗?
我使用的是Windows 8.1。
答案 0 :(得分:0)
如果我没记错的话,scandir()
能够应对 URI百分比编码文件名,那么,就在我的脑海中:
$folder_encoded = rawurlencode($folder);
$array = scandir($folder_encoded);