Ankündigung

Einklappen
Keine Ankündigung bisher.

include pfäde ?

Einklappen

Neue Werbung 2019

Einklappen
X
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • notyyy
    hat ein Thema erstellt include pfäde ?.

    include pfäde ?

    hallo, ich habe eine classe, die eine xml datei zusätzlich braucht, die classe wird von anderen dateien geincludet.

    nun habe ich ein problem mit dem pfad der sich jenachdem von wo es geincluded wird verändert, deshalb versuchte ich folgendes gerüst zu bauen:

    $this->datei = dirname(__FILE__).$datei;

    der pfad ist jedoch immernoch der falsche (jenachdem von wo er aufgerufen wird). gibt es dafür eine lösung ?

  • Zergling-new
    antwortet
    Ich benutze ziemlich viel
    PHP-Code:
    <?php
    dirname
    (__FILE__) . DIRECTORY_SEPARATOR
    ?>
    wenn ich davon ausgehen kann, dass sich die Ordner-Struktur nicht mehr ändert.
    Einfach erweitern:
    PHP-Code:
    <?php
    $this
    ->datei dirname(__FILE__).$datei;
    var_dump($datei__FILE__dirname(__FILE__), $this->dateifile_exists($this->datei), is_readable($this->datei)); exit;
    ?>
    Dazu muss man nun wirklich nicht ins Forum rennen!

    Du kannst dir auch mal realpath() anschauen:
    http://de.php.net/manual/de/function.realpath.php
    realpath — Erzeugt einen kanonisch absoluten Pfadnamen
    Beschreibung
    string realpath ( string $path )

    realpath() expandiert alle symbolischen Links, und beseitigt Verweise zu '/./', '/../' und extra '/' Zeichen im Input path, und gibt den absoluten Pfadnamen kanonisch zurück. Der Pfad im Ergebnis enthält keine Komponenten eines symbolischen Links mehr, wie '/./' or '/../'.

    realpath() gibt im Fehlerfall FALSE zurück, z.B. wenn die Datei nicht existiert.

    Einen Kommentar schreiben:


  • notyyy
    antwortet
    Re: include pfäde ?

    [quote="Schnulli"]
    Zitat von notyyy
    Zitat von notyyy
    das \ ist drin, hattes nur hier irgendwie verschluckt
    schließe ich allerdings, dass wir eh nur Traumcode
    nein, hab ihn nur eben fürs forum gesäubert und dabei ist irgendwie das \ verloren gegangen. ist kein traumcode, ich zeig dir auch gerne die classe die ich damit am schreiben bin =)


    ähm, ich versuche nun mal den server pfad damit dann nachzubauen (kompletten), danke KingCrunch.

    Einen Kommentar schreiben:


  • Schnulli
    antwortet
    Re: include pfäde ?

    Zitat von notyyy
    $this->datei = dirname(__FILE__).$datei;

    der pfad ist jedoch immernoch der falsche (jenachdem von wo er aufgerufen wird). gibt es dafür eine lösung ?
    __FILE__ liefert den absoluten Pfad zur Datei, in der der Code steht. Da ändert sich nichts. Aus
    Zitat von notyyy
    das \ ist drin, hattes nur hier irgendwie verschluckt
    schließe ich allerdings, dass wir eh nur Traumcode sehen. Was der wirklichle Fehler ist, läßt sich so nicht ermitteln.

    ---
    classe -> Klasse
    Pfäde -> Pfade

    Einen Kommentar schreiben:


  • KingCrunch
    antwortet
    absoluten pfad wollte ich vermeiden
    Warum? Und jetzt bitte nicht "Weil ich will, dass das Script auch auf Servern mit anderer Verzeichnisstruktur funktioniert" Es gibt genug Methoden absolute Pfade dynamisch zu generieren (siehe $_SERVER).

    Einen Kommentar schreiben:


  • notyyy
    antwortet
    absoluten pfad wollte ich vermeiden, das \ ist drin, hattes nur hier irgendwie verschluckt, hat php keine funktion um das verueichniss der momentan geöffneten datei zu zeigen ? getcwd() klappte auch nicht ....

    Einen Kommentar schreiben:


  • KingCrunch
    antwortet
    Haste $this->datei mal ausgegeben lassen? (Glaube fast, da fehlt nen Slash /) Desweiteren kannste auch einfach nen absoluten Pfad setzen, der dann von überall funktioniert. Include ist nicht zwangsläufig notwendig.

    Einen Kommentar schreiben:

Lädt...
X