Hello,
das Wesentliche dabei ist wohl die Unterscheidung zwischen unerwarteten Fehlern, für die es dann vermutlich auch keine Behandlung gibt und erwarteten "Fehlern" - also Statusmeldungen, die man behandeln muss.
Wenn sich eine datei nicht öffnen lässt, war dieser vorhersehbar.
$fh = fopen('filename','r');
if (!$fh)
{
## Fehlerbehandlung
}
PHP macht einem aber eine qualifizierte Fehlerbehandlung sehr schwer, da es keine Fehlernummern zur Verfügung stellt, sondern nur Fehlertexte. Um an diese heranzukommen, muss man Aufwand treiben:
z.B.:
ini_set('track_errors', 1);
http://de3.php.net/manual/en/reserved.variables.phperrormsg.php
$php_errormsg = false;
$fh = fopen('filename','r');
if (!$fh)
{
##Fehlerbehandlung
if (!empty($php_errormsg) and get_errno($php_errormsg)) ## selber schreiben!
{
# ...
}
}
Erst dann kannst Du entscheiden, was geschehen soll.
Liebe Grüße aus dem schönen Oberharz
Tom vom Berg