Willkommen in der Webstatt Zum Webstatt Blog und Stories
Rebel4s Rebel4s am 10.07.07 17:16

Hallo,
Ich hab einen eigenen Error Handler, der auch ganz gut Funktioniert.
Jedoch nicht bei Fatal oder Parse Errors. Gibt es da einen Trick oder ist es einfach nicht möglich?

netcup.de Warum gibt es hier Werbung?
Snake am 10.07.07 17:24

Nunja, du könntest z.b. vor dem includen testen, ob der syntax okay ist (php -l).
Aber eine wirklich schöne Möglichkeit sehe ich nicht. Allerdings sind syntax Fehler auch eher unwarscheinlich im Live betrieb

Rebel4s Rebel4s am 10.07.07 17:36

Das mit Parse error kann ich ja noch nachvollziehen, aber warum geht das nicht mit Fatal errors?

mab mab am 10.07.07 20:51

naja, ich denk mal, da das script bzw. die ausführung abbricht. dann gibts nichts mehr zu catchen.... oder doch?

Rebel4s Rebel4s am 11.07.07 00:19

http://ca3.php.net/manual/en/ref.errorfunc.php#errorfunc.constants.

wie siehts da mit E_RECOVERABLE_ERROR aus?

mab mab am 11.07.07 09:22

ja, aber ich glaub das ist nur zum protokollieren.... mir fällt im moment kein trick ein. sollte jemand eine klasse haben, dann nur her damit :)

hoffie hoffie am 12.07.07 20:23

Fatal errors sind fatal errors, und was nicht zu Unrecht. Die kommen meistens dann zu Stande, wenn die Engine in einem nicht definierten Zustand ist (mir fällt jetzt spontan mal Exception während Script-Shutdown ein, aka "Exception thrown without stack frame" oder so).

Andere Sprachen haben das anscheinend besser gelöst, in Python kriegt man für fast alles (oder wirklich alles? mir ist nie was anderes aufgefallen) eine schöne Exception, die man selbstverständlich auch fangen kann. Egal ob das jetzt ein Parse-Error in einem importierten Modul ist, ein (drohender) Stackoverflow bei Rekursion oder sonstwas.

Creative Commons Lizenzvertrag
Alle Inhalte des Webstatt-Archivs stehen unter einer Creative Commons Namensnennung - Weitergabe unter gleichen Bedingungen 3.0 Unported Lizenz.

Impressum & Kontakt