Kann nicht öffnen Sie eine lokale Datei mit fopen()
HALLO. ich bin versucht, öffnen Sie eine lokale Datei aus xml-erstellt von xlink habe ich analysiert den Pfad der Datei in $resourceRef variable und es sieht so aus, dass file:/./birds/birds.txt
ohne die Anführungszeichen. Bitte mir jemand sagen, warum ich kann nicht es zu öffnen. hier ist mein code
$fh = fopen($resourceRef, 'r');
$theData = fread($fh, filesize($resourceRef));
fclose($fh);
echo $theData;
bekomme ich diesen Fehler
Warning: fopen(file:/./birds/feathers.txt) [function.fopen]: failed to open stream: Invalid argument in C:\xampp\htdocs\test.php auf der Linie 31
Bitte jemand mich leiten.
file:/./birds/birds.txt
ist keine gültige URI.können Sie fügen Sie den XML-Code, Sie erhalten diese URI aus? Sind Sie vorangestelltem " file:/ an die URL? Und verzeihen Sie meine Unwissenheit, aber ich dachte, xlink war eine spec - ist es auch ein tool?
InformationsquelleAutor Zero Cool | 2010-08-23
Du musst angemeldet sein, um einen Kommentar abzugeben.
Ihre URI nicht korrekt, es sollte entweder
file://birds/birds.txt
oder nurbirds/birds.txt
.Wie wäre es mit einem einfachen str_replace('file:/', 'file://'); ?
ich glaube, ich bin gonna versuchen, dass es besser klingt Dank DSAPRiD
InformationsquelleAutor DASPRiD
Argument sein sollte für Sie geeigneten Weg für eine bestimmte Plattform (Für Witwen "C:\\dir(...)" ), oder entsprechenden URI ("file://(...) )
die Verwendung von string-replace-Funktion zu ersetzen "file:/./" Sie "Datei://./" dadurch wird die korrekte Zeichenfolge gültige URI, aber immer noch Sie haben, um mit relativen Pfaden (den Punkt im Pfad) für diese zu arbeiten, das php-Skript sollte im selben Verzeichnis wie die xlink erzeugten Datei
was ist, wenn ich take away Datei:/./ aus file:/./birds/birds.txt so wird es sein birds/birds.txt und es funktioniert . ich denke, das sollte besser sein. alle links und Bilder, txt-Dateien in einem separaten Ordner. do u glaube, ich kann es mit Hilfe von string ersetzen, oder eine andere Funktion.
Sie haben zu konvertieren Zeichenfolge, bis ein Gültiger Pfad bzw. eine gültige URI, in jedem anderen Fall, fopen wird scheitern, Datei öffnen, können Sie reguläre Ausdrücke, string-ersetzen-Funktion und beliebigen anderen Reihe von verfügbaren Sachen zu machen, das einen gültigen Informationen darüber, wo die Datei liegt 🙂
und PHP gibt Ihnen Funktionen wie file_exists($Datei) zum testen/helfen, wenn Sie Sie geändert haben, die Datei Pfad/URI korrekt. Zum Beispiel: remove (Datei ersetzen:/./ auf eine leere Zeichenfolge), und perpend einen gültigen Pfad für das Verzeichnis, in dem Sie haben, dass Dateien, Datei-name, wenn richtig gemacht, sollte funktionieren
InformationsquelleAutor canni