сортировка — Как прочитать имена файлов, сохраненные как utf8 (урду / арабские символы) в php?

Пожалуйста, ведите меня: —
1. Как читать / сохранять utf8 символов имен файлов сохранено на урду / арабском языке. Это сработало у меня $ file_utf8 = iconv («Windows-1256», «utf-8», $ filepath); , но не читает все имена файлов, пропуская более 80%.
Мне тоже нужно

2. отсортировать список файлов (имена файлов) в отношении время создания и размер.

3. Сохраните отсортированный список в текстовом файле UTF-8 , решил эту часть с этим кодом: проблема остается в том, что ВСЕ имена файлов не читаются

$myDr = fopen("list.txt", "w") or die("Unable to open file!");

foreach ($files as $f)
{
$path1 = iconv( "Windows-1256", "utf-8", $f );
echo  $zz . " . " . $path1, "<br>\n";$txtpoet2 = "$path1 \r\n" ;
fwrite($myDr, $txtpoet2);$zz++;
}
fclose($myDr);

У меня есть много изображений в каталогах и подкаталогах, где я сохранил имя файла на языке урду. «ترے عشق کی انتہا چاہتا ہوں. Png«. Я хочу сделать список всех каталогов и подкаталогов и сохранить в текстовом файле Unicode. Я не могу читать символы урду в php кодирование.

Моя среда — Windows 7 (64-разрядная), использующая XAMPP — apache в качестве сервера. Я пробовал C ++, но не смог найти решение.

Я использую следующий PHP для чтения всех файлов в подкаталогах: —

<?php
header('Content-type: text/html; charset=utf-8');

function listdir($dir='.')
{
if (!is_dir($dir))
{
return false;
}

$files = array();
listdiraux($dir, $files);

return $files;
}

function listdiraux($dir, &$files)
{
$handle = opendir($dir);
while ( false !==($file = readdir($handle)) )
{
if ($file == '.' || $file == '..')
{
continue;
}
$filepath = $dir == '.' ? $file : $dir . '/' . $file;
if (is_link($filepath))             continue;
if (is_file($filepath))
{
$files[] = $filepath;

else if (is_dir($filepath))         listdiraux($filepath, $files);
}
closedir($handle);
}

$files = listdir('.');
sort($files, SORT_LOCALE_STRING);
$zz = 0;
foreach ($files as $f)
{

echo  $zz . " . " . $f, "<br>\n";
$zz++;

}

?>

Источник этого кода http://php.net/manual/en/function.readdir.php .

Благодарю всех вас.

0

Решение

Я нашел решение для урду, На языке говорят более миллиарда человек, в основном Индия, Пакистан, Иран, Афганистан. В Индии используется его диалект, но другой сценарий / символы.
Моя благодарность всем членам stackoverflow

Вы найдете много улучшений в www.rwpmall.com/urdu/poetry

Мне нужна была эта строка в коде

**

$ file_utf8 = iconv («Windows-1256», «utf-8», $ sub);

**

Я публикую полное решение для помощи другим:

<?php
$dir = ".";

function ReadFolderDirectory($dir)
{
$listDir = array();
if($handler = opendir($dir)) {
while (($sub = readdir($handler)) !== FALSE)
{
if ($sub != "." && $sub != ".." && $sub != "Thumb.db")
{
if(is_file($dir."/".$sub))
{
$file_utf8 = iconv( "Windows-1256", "utf-8", $sub );
$listDir[] = $sub;
//  echo  $file_utf8 ."<br>";
echo  $dir."/".$file_utf8 ."<br>";
}
elseif(is_dir($dir."/".$sub))
{
echo "  New Sub Directory :  >>>>     ". $dir."/".$sub . " <br> ";
$listDir[$sub] = ReadFolderDirectory($dir."/".$sub);
}
}
}
closedir($handler);
}

return $listDir;
}
ReadFolderDirectory($dir);
?>

С уважением.
Пусть Бог даст нам мудрость, чтобы сделать эту Землю лучшим местом для Человечества.

0

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]