phpbar.de logo

Mailinglisten-Archive

[php] Reihenfolge in der Datei und anzeige am bildschirm nicht gleich (reihenfolge)

[php] Reihenfolge in der Datei und anzeige am bildschirm nicht gleich (reihenfolge)

php_(at)_phpcenter.de php_(at)_phpcenter.de
Thu, 6 Dec 2001 19:19:00 MEST


Hallo

Zusammen dieses Code schnipsel soll den server nach htm oder html dateien,
verzeichnissen
scannen und dies am bildschirm aus geben und in ein file schreiben. Jedoch
ist
die reihenfolge im file nicht glich wie im code der angezeigt wird. Was für
mich ziemlich unlogisch ist (verzeichnisse kommen zuletzt) was muss ändern
damit
beides identisch ist?

mfG

Thomas Michel




----------Code-----------------

<?PHP

_(at)_unlink("c:/apache/htdocs/layersmenu.txt");

function show_dir($dir, $pos=2)
{
$fp = fopen("c:/apache/htdocs/layersmenu.txt", "a+");
     if($pos == 2)
     {
          echo "<hr><pre>";
     }

     $handle = _(at)_opendir($dir);
     while ($file = _(at)_readdir ($handle))
     {
        if (eregi("^\.{1,2}$",$file))
        {
          continue;
        }

     if(is_dir($dir.$file))
        {
          printf ("% ".$pos."s <b>%s</b>\n", "|-", $file);
          show_dir($dir.$file."/", $pos + 3);
        }
        else
        {
if(eregi("^[^_]*.(html|htm)",$file))
{
$htmldatei="";
$dateipfad="/".$dir.$file;
$dateioeffnen=_(at)_file($dateipfad);
for($a=0;$a<count($dateioeffnen);$a++)
{
$htmldatei.=$dateioeffnen[$a];
}
preg_match('=<title>([^<>]+)</title>=smi',$htmldatei,$regs);
if(count($regs)>1)
{
$titel=$regs[1];
}
else
{
$dateititel=explode(".",$file);
$titel=ucfirst($dateititel[0]);
}



        printf ("% ".$pos."s <a href=\"/$dir$file\">$titel</a>\n", "|_",
$file);

	for($a=0;$a<=$pos;$a++) $writeinfile1.= ".";
	$writeinfile1.=$titel."|".$dir.$file."|".$titel."\n";
	fwrite($fp,$writeinfile1);
		}
        }
     }
     _(at)_closedir($handle);

     if($pos == 2)
     {
          echo "</pre><hr>";
     }

}

show_dir("");

?>


php::bar PHP Wiki   -   Listenarchive