phpbar.de logo

Mailinglisten-Archive

[php] Probleme mit file_exists()

[php] Probleme mit file_exists()

Lutz Zetzsche Lutz.Zetzsche at sea-rescue.de
Fre Aug 3 11:22:02 CEST 2007


Hallo Tim,

Am Freitag, 3. August 2007 schrieb Tim:
> mich erwischt hier gerade ein seltsames Problem. Ich habe einen
> absoluten Pfad zu einer Datei und möchte überprüfen, ob diese Datei
> existiert. Beispiel:
>
> $path = "/path/to/file/myfile_0.tpl";
> if(file_exists($path)) echo "jo :-)";
>
> Die Datei "myfile_0.tpl" existiert auch wirklich im entsprechenden
> Ordner. Wenn ich jetzt aber folgendes auswerten lasse:
>
> $path = "/path/to/file/myfile_XXX.tpl";

[...]

> Nur: Bei mir ist es komplett egal, was ich da als Pfad angebe, ich
> bekomme *immer* true zurück!

bekommst Du TRUE zurück oder "jo :-)"? Das ist nämlich ein kleiner 
Unterschied. :-) Du hast oben die geschweiften Klammern bei dem 
if-Zweig weggelassen. Das kann schon einen Unterschied machen, 
insbesondere wenn Du Deine Programmierung oben nur auszugsweise 
mitgeschickt hast. Eventuell wird das echo in Deinem Programm gar nicht 
mehr als Teil des if-Zweigs erkannt. Dann bekommst Du die Ausgabe 
nämlich immer, gleich was file_exists() zurückgeliefert hat.

Was ergibt bei Dir denn folgender Quelltext:

<?php

	$path = '/path/to/file/myfile_XXX.tpl';
	if (file_exists($path)) {
		echo 'jo :-)';
	}

?>

Ansonsten erinnert mich das Verhalten an mod_speling vom Apache, aber 
das dürfte mit Aufrufen direkt über das Dateisystem überhaupt nichts zu 
tun haben.


Viele Grüße
Lutz

php::bar PHP Wiki   -   Listenarchive