Robert Bienert: problem mit file(), wenn nicht vorhanden

Beitrag lesen

Moin!

ich möchte die funktion file() benutzen, um damit eine andere webseite einzulesen:

$html = implode('', file($page));

soweit funktioniert das ja auch, aber wenn $page ungültig ist (z.b. dns kann nicht aufgelöst werden) wirft das ganze eine unschöne fehlermeldung aus.

Das Fehlermeldungen-Problem bekommst du mit einem dem Funktionsnamen vorangestellten „@“ in den Griff:

$html = @implode('', @file($page));

Ich gehe hier natürlich davon aus, dass $page bereits auf Gültigkeit geprüft ist, damit du (oder irgendein anderer Webmaster Probleme bekommt). Was du allerdings in deinem Code wirklich suchst, heißt file_get_contents(). Bei lokalen Dateien kannst du deren Existenz mit file_exists()  prüfen, für externe Dateien wirst du wohl nicht um das explizite Checken der Rückgabewerte herumkommen, _was man sowieso IMMER tun sollte_.

Grüße, Robert