请指导我: -
的 1。如何读取/保存以乌尔都语/阿拉伯语保存的文件名的utf8字符。这对我有用 $ file_utf8 = iconv(“Windows-1256”,“utf-8”,$ filepath); ,但没有读取所有文件名,跳过80%以上。
我还需要
2。根据创建时间和尺寸对文件列表(文件名)进行排序。
第3。将排序后的列表保存在utf-8 txt文件中,使用以下代码解决了这一部分:问题仍然是未读取所有文件名
$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 txt文件中。我无法读取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 :(得分:0)
我找到了乌尔都语的解决方案,超过10亿人口使用的语言,主要是印度,巴基斯坦,伊朗和阿富汗。在印度,使用其方言,但使用不同的剧本/字符 我对stackoverflow的所有成员表示赞赏
您将在 www.rwpmall.com/urdu/poetry
中找到很多改进我在代码中需要这一行
**
**
我发布了帮助他人的完整解决方案:
<?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);
?>
的问候。
愿上帝赐予我们智慧,使这个地球成为人类更美好的地方。