kostenloser Webspace werbefrei: lima-city


Pfad angaben vereinfachen

lima-cityForumProgrammiersprachenPHP, MySQL & .htaccess

  1. Autor dieses Themas

    ohost

    ohost hat kostenlosen Webspace.

    Ich habe ein Problem (was f?r ein wunder, warum w?rde ich den sonst ein topic aufmachen^^)
    Also: Ich bin gerade dabei eine "art" explorer zu schreiben...
    bei solchen filesystemen oder explorern kann man sich in ordnern auf und ab bewegen (logisch^^)
    wenn ich also im pfad "/2005/juni/ordnerxy/" bin und wieder eine ebene hoch geh hab ich "/2005/juni/ordnerxy/../"
    meine frage ist es ob es eine funktion oder ein script gibt die den Pfad vereinfacht auf "/2005/juni/"
    ich hab da n?mlich noch nichts gefunden und meine versuche haben auch nicht geklappt...

    Wenn mir jemand helfen k?nnte w?r ich sehr dankbar... *:angel:such*
  2. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

    lima-city: Gratis werbefreier Webspace für deine eigene Homepage

  3. ich habe momentan keinen Code Parat aber versuchs mal mit "explode()"
  4. Autor dieses Themas

    ohost

    ohost hat kostenlosen Webspace.

    hab ich, l?auft aber nicht einwandfrei:
    echo $folder;
    $folder2 = explode("/", $folder);
    $array_count=0;
    $x=0;
    while($x!=1) {
    echo $folder2[$array_count]."<br>\n";
    if($folder2[$array_count]) {
    $array_count++;
    } else {
    $x=1;
    }
    }
    $array_count2=$array_count;
    $array_count=0;
    while($array_count<=$array_count2) {
    if($folder2[$array_count]=="..") {
    $folder2[$array_count]="";
    $folder2[$array_count-1]="";
    $folder2[$array_count-2]="";
    echo $folder2[$array_count];
    echo $folder2[$array_count-1];
    echo $folder2[$array_count-2];
    }
    $array_count++;
    }
    $folder="";
    $array_count=0;
    while($array_count<=$array_count2) {
    if($folder2[$array_count]="") {
    $folder.="/";
    }
    $folder.=$folder2[$array_count];
    
    $array_count++;
    }


    Das habe ich m?hselig programmiert^^
    aber leider ist irgendwo ein bug drin...
    ich dachte, dass wenn ich "1|2|3" explodet:
    array[0]=1
    array[1]=2
    array[2]=3
    gibt, aber irgedwie ist dass hier nicht so :(
    vielleicht kann ja irgendwer den code nen bischen umschreiben..
  5. Hi,

    das ist viel zu kompliziert.
    So geht schnell und sicher:

    $level = 1;
    $path = "/2005/juni/ordnerxy/";
    $path = explode("/",$path);
    
    if ($path[0] == "") {unset($path[0]);}
    if (end($path) == "") {unset($path[count($path) - 1]);}
    
    $path = array_slice($path,0,count($path) - $level);
    $path = implode("/",$path);
    
    if ($path[0] != "/") {$path = "/$path";}
    if ($path[strlen($path) - 1] != "/") {$path .= "/";}
    
    echo $path;


    Dieses beispiel w?rde "/2005/juni/" ausgeben.
    In $level musst du angeben, wie viele "Ordner" du von rechts aus entfernen m?chtest, in $path den Pfad.

    Alles klar, oder brauchst du mehr erkl?rung?

    mfg,
    hr

    Beitrag ge?ndert am 14.01.2006 22:45 von heavyraptor
  6. Autor dieses Themas

    ohost

    ohost hat kostenlosen Webspace.

    Hey danke f?r den Code...
    Sorry aber ich war die letzen Tage nicht bei Lima... wir daf?r jetzt gleich voll ausgibig ausprobiert ;-)

    Danke nochmal!!
  7. Man kann aber auch einfach dirname() verwenden, das gibt immer den Pfad zum n?chsth?heren Verzeichnis zur?ck:

    http://de.php.net/manual/de/function.dirname.php
  8. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

    lima-city: Gratis werbefreier Webspace für deine eigene Homepage

Dir gefällt dieses Thema?

Über lima-city

Login zum Webhosting ohne Werbung!