Вывод в браузер содержимого каталога (названия файлов а каталоге имеют кириллицу)

korpus

злой бобёр
Вывод в браузер содержимого каталога (названия файлов а каталоге имеют кириллицу)

Для вывода в браузер содержимого каталога использую DirectoryIterator
Код:
$currentdir='C:\WebServers\home\localhost\www\myfolder';
$dir=new DirectoryIterator($currentdir);
foreach ($dir as $file)
{
	echo $file->getFilename().'<br />';
}
Если внутри папки myfolder есть файлы с названиями, содержащими русские буквы, то их вывод в браузер осуществляется в кодировке windows-1251, а вся остальная страница отображается в нормальной кодировке UTF-8, которую я использую.
Что с этим можно поделать?
 

korpus

злой бобёр
Не помогло :(

Здесь вопрос в просто отображении имени файла с русскими буквами (пока я это имя не собираюсь делать ссылкой, а просто вывожу название в браузер). Про ссылки пока речь не идёт.

Вместо русских букв в браузер выводятся такие символы: &#65533;&#65533;&#65533;&#65533;&#65533;&#65533;.jpeg

Когда я меняю кодировку страницы на windows-1251, то они становятся нормальными, но остальной текст не отображается как надо, т.к. сделан в кодировке UTF-8.

Ещё заметил, что когда я через свой скрипт создаю папку (функцией mkdir() ) с русскими буквами, то у меня на компьютере название папки создаётся нечитаемым: РјРѕСЏ первая папка - вот так прямо моя windows и отображает такие папки.
Не знаю, что с эти можно поделать и как поступать в случае, если надо создавать или читать папку/файлы с русскими символами. Пока тестирую на windows.
 

zerkms

TDD infected
Команда форума
кодировка данных в браузере должна быть везде одинаковой. т.е. если твои имена фалйлов в cp1251, то их нужно перевести в утф.
для файловой системы аналогично: фс настроена на работу с одной конкретной кодировкой и при создании файлов нужно, чтобы имя было указано в этой конкретной кодировке

iconv()
 
Сверху