Eigener Errorhandler

Wolfsbein

Erfahrenes Mitglied
Hallo
ich versuche mich gerade an einem einfachen errorhandler:
PHP:
function reportError()
{
    echo $PHP_ERRORMSG;
    echo 'blub';
    exit;

}
@include_once('gibtsned') or reportError();
Es wird natürlich keine Fehlermeldung ausgegeben. Allerdings auch keine $PHP_ERRORMSG (ist die evtl. in einem globalen Array wie $_SERVER?) und auch kein blub. Die Funktion wird scheinbar nicht aufgerufen. Was ist da falsch?
 
nun...hoffe ich vertu mich da jetzt nicht...aber bedeutet ein @ vor einem Befehl nicht, das nix ausgegeben werden soll??
 
@TeCe:
Durch das @ erzeugt PHP von sich aus keine Fehlermeldungen, was man als Scripter dann macht wenn man einen Fehler abfängt bleibt jedem selbst überlassen...

@Wolfsbein:
Die Funktion include_once hat keinen Rückgabewert wie z.B. die mail-Funktion, die ja ein bool zurückgibt. Sogesehen wird nie ausgeführt was hinter dem or steht - der "Ausdruck" include_once() wird eben nie FALSE weil er keinen Wert besitzt und somit auch kein Ausdruck ist ;) Deshalb kannst den or-Operator hier vergessen.
In diesem speziellen Fall würde man dann mit einem vorhergehenden file_exists() besser fahren.
 
Ok das habe ich nicht gewusst. Ich werde mich mal auf php.net informieren. Notfalls muss ich das wirklich anders machen.
EDIT: Die Variable ERRORMSG gibt es anscheinend nicht. Das habe ich in irgendeinem Buch gelesen. Wie kann ich den letzten aufgetretenen Fehler abfangen?
 
Zuletzt bearbeitet:
Zurück