Marc Reichelt: Include bereitet mir Probleme

Beitrag lesen

Hallo an alle,

ich habe ein kleines Problem in PHP und komme einfach nicht auf die Lösung.
So sieht meine Ordnerstruktur aus:

./eins.php
./includes/zwei.php
./includes/log.txt

Die Datei eins.php includet die Datei zwei.php, die im Unterordner "includes" liegt, und ruft danach eine kleine Funktion auf:

include("./includes/zwei.php");  
log("Fehlerausgabe");

Die Funktion log wurde vorher in Datei zwei.php wie folgt definiert:

function log($str)  
{  
 $fn = @fopen("./log.txt", "a");  
 if($fn)  
 {  
  /* ... */  
 }  
}

Damit versucht die Funktion, eine Datei "log.txt" im Hauptordner zu erstellen - und nicht im Unterordner "includes". Eine Änderung von "./log.txt" auf "./includes/log.txt" bewirkt das was ich erreichen möchte, aber das ist mir etwas zu blöd. Ist es möglich, das aktuelle Verzeichnis der _includeten_ Datei irgendwie abzufragen, und die Datei nur dort zu öffnen - unabhängig vom Ort der Datei die die Funktion benutzt?

Vielen Dank im Voraus für eure Hilfe, und gute Nacht!

Marc Reichelt || http://www.marcreichelt.de/

--
Linux is like a wigwam - no windows, no gates and an Apache inside!
Selfcode: ie:{ fl:| br:> va:} ls:< fo:} rl:( n4:( ss:) de:> js:| ch:? sh:| mo:) zu:)
http://emmanuel.dammerer.at/selfcode.html