Показать сообщение отдельно
Старый 15.04.2009, 18:44
artem_fs вне форума Посмотреть профиль Отправить личное сообщение для artem_fs Найти все сообщения от artem_fs
  № 3  
Ответить с цитированием
artem_fs

Регистрация: Jul 2008
Сообщений: 257
PHP код:
$startdirname = "e:/films/Films";
$linkname = "ftp://192.168.1.1/Films/Films";
 
recopendir($startdirname);

function recopendir($dirname)
{
     if($dir=opendir($dirname)) 
     {
        global $startdirname;
        global $linkname;
        $folder = str_replace($startdirname."/", "", $dirname); // тут важное
        $toXML .= "<folder name = \"".toUTF($folder)."\" >";
        while ($file=readdir($dir)) 
        { 
            if (eregi(".avi$|.mkv$|.vob$",$file)) 
            $toXML .= "<item film = \"".toUTF($file)."\" link = \"".toUTF($linkname."/".$folder."/".$file)."\" />";
            if (is_dir($dirname."/".$file) && ($file != ".") && ($file != ".."))     
            recopendir($dirname."/".$file);
        } 
        closedir($dir); 
        $toXML .= "</folder>";
     }
}

writeXML('имя_файла.xml', $toXML);

function writeXML($filename, $xml){
    $xmlStart = '<?xml version="1.0" encoding="utf-8"?>';
    $toxml = $xmlStart.$xml;
    $toxml = iconv("windows-1251", "UTF-8", $toxml);
    $myfile = fopen ($filename, "w+");
    fwrite ($myfile, $toxml);
    fclose ($myfile);
}
только уберите использование функции toUTF, проще сразу все собержимое переконвертить, оно есть в функции writeXML


Последний раз редактировалось artem_fs; 15.04.2009 в 18:49.