Frage fopen () Fehlerbehandlung


Ich arbeite gerade an einem Skript, das ein einliest HTML Vorlagendatei, füllt sie mit Daten und speichert dann die aufgefüllte Datei HTML Datei als zwischengespeicherte Kopie in meinem Cache-Ordner.

Ich habe wirklich Schwierigkeiten zu bewerten, ob ein Fehler aufgetreten ist fopen() während Laufzeitfehler unterdrückt werden:

$file = @fopen($location,"w+"); 

// manual states fopen() returns false on error
// though the below does not catch any errors 

if (!$file) {
    $this->doSomething();
}

Arbeitet die Unterdrückung gegen mich? Ich würde wirklich einen Einblick in diese Sache schätzen. Ich habe versucht Einstellung error_reporting um keine Fehler anzuzeigen,

ini_set('display_errors',0);
ini_set('log_errors',1);
error_reporting(E_ALL);

und entfernte die Unterdrückung von fopen() aber ohne Erfolg.


5
2017-10-24 10:40


Ursprung


Antworten:


Dein Code sollte funktionieren. Wenn Sie nie die eingeben if Anweisung und keine Fehler ausgelöst, die Datei wurde erfolgreich geöffnet. Warum bist du sicher, dass die fopen() Anruf fehlgeschlagen?


4
2017-10-24 10:48