2009-07-02 6 views
0

Ich kann nicht eine Sache verstehen. In Code, zum Beispiel:PHP - Probleme mit Dateien Pfade

$filePath = 'http://wwww.server.com/file.flv'; 

if(file_exist($filePath)) 
{ 
    echo 'yes'; 
} 
else 
{ 
    echo 'no'; 
} 

Warum Skript Rückkehr ‚Nein‘, aber wenn ich kopiere, die auf den Browser herunterlädt oder?

Antwort

2

Die Funktion file_exists() sucht nach einer Datei oder einem Verzeichnis, das aus der Sicht des Dateisystems des Servers existiert. Wenn http://www.server.com/ entspricht/home/username/public_html/dann müssen Sie Ihren Code machen:

$filename = '/home/username/public_html/file.flv'; 
if(file_exists($filename)) 
{ 
//true branch 
} 
else 
{ 
//false brach 
} 

http://php.net/file_exists Siehe für weitere Informationen.

0

file_exists() Suche nach Dateisystemdateien und Verzeichnissen. Verwenden Sie fopen(), um zu sehen, ob diese Web-URL erreichbar ist. Falls der entsprechende Server 404 Not Found für diese Ressource zurückgibt, gibt fopen() false zurück und gibt eine Warnung aus. Eine viel bessere Lösung wäre eine HTTP HEAD-Anfrage.

0

Zuerst die php Funktion, die Sie verwenden müssen, ist file_exists() mit dem "s" am Ende. Zweitens denke ich, dass der Pfad zu der Datei ein lokaler Dateipfad sein muss, keine URL. Nicht sicher, obwohl ...

1

Verwendung

$_SERVER["DOCUMENT_ROOT"] 

den richtigen Dateisystem-Pfad, nicht abhängig von der Entwicklung oder Produktionssystem beispielsweise zu gewährleisten.

in diesem Fall wird es

$filePath = $_SERVER["DOCUMENT_ROOT"].'/file.flv'; 
0

tun sein:

function isExistsFileOnMyWebsite($fileName) { 
    return file_exist($_SERVER['DOCUMENT_ROOT'].'/'.$fileName); 
} 

if(isExistsFileOnMyWebsite('file.flv')) 
{ 
    echo 'yes'; 
} 
else 
{ 
    echo 'no'; 
}