CUCM Logo
Do  27.06.2019CompUser Club Mainspitze e.V.https://www.google.de/maps/place/Moselstraße+21,+65428+Rüsselsheim/@49.9909897,8.4162473,20z/data=!4m2!3m1!1s0x47bd99327b0f7cb9:0x7450272f33dc29e065428 RüsselsheimMoselstrasse 21
Do  27.06.2019CompUser Club Mainspitze e.V.https://www.google.de/maps/place/Moselstraße+21,+65428+Rüsselsheim/@49.9909897,8.4162473,20z/data=!4m2!3m1!1s0x47bd99327b0f7cb9:0x7450272f33dc29e065428 RüsselsheimMoselstrasse 21
Fr  28.06.2019CompUser Club Mainspitze e.V.https://www.google.de/maps/place/Moselstraße+21,+65428+Rüsselsheim/@49.9909897,8.4162473,20z/data=!4m2!3m1!1s0x47bd99327b0f7cb9:0x7450272f33dc29e065428 RüsselsheimMoselstrasse 21
 

Blog: Yii: errorhandler / exceptionhandler mit onError / onException

Autor: Nick   Kommentare (0)   Kurz URL: -   Bei Twitter speichern   Bei Facebook speichern   Bei Digg speichern   Bei Delicious speichern   Bei Mr. Wong speichern   Bei Google Bookmarks speichern
04.11.2012
Ein Beispiel zum Abfrangen von allgemeinen Fehlern und Exceptions im Yii Framework der Programmiersprache PHP. Der Error Handler / Exception Handler wird mittels der Events onError und onException implementiert.

Die Dokumentation vom Yii Framework erwähnt den Einsatz von Events und ErrorHandler zum Abfangen von Fehlern. Jedoch fällt die Dokumentation sehr spärlich aus, so fehlen Beispiele, wie die Events tatsächlich implementiert werden.

Der onError Event wird bei PHP Fehlern geworfen, zum Beispiel wenn ein Array Index nicht existiert. Der onException Event wird ausgelöst, wenn eine Exception nicht mittels try / catch gefangen wurde. Bei beiden Events kann die Eigenschaft 'handled' auf true gesetzt werden, wenn der Fehler behandelt wurde. Andernfalls wird der Fehler an den nächsten Handler weiter gereicht. Dies ist nützlich, wenn man zum Beispiel nur einen zusätzlichen Log Eintrag anlegen möchte.

Fehlerbehandlung: onError Error Handler


// In der Config - Direkt im Array Root Index

// Error Handler:
// Implementierung als Anonyme Funktion (Closure) ab PHP 5.3
'onError' => function($event) {
    
Yii::log($event'error');
},

// Implementierung als Callback Funktion
'onError' => array('onErrorCallback'),

function 
onErrorCallback($event) {
    
Yii::log($event'error');
}

// "Dynamische" Implementierung in einem Module
Yii::app()->onError = array('onErrorYii');


Exceptionbehandlung: onException Exception Handler


// Exception Handler:
// Implementierung als Anonyme Funktion (Closure) ab PHP 5.3
'onException' => function($event) {
    
Yii::log($event'exception');
},

// Implementierung als Callback Funktion
'onException' => array('onExceptionCallback'),

function 
onExceptionCallback($event) {
    
Yii::log($event'exception');
}

// "Dynamische" Implementierung in einem Module
Yii::app()->onException = array('onExceptionYii');


Links

Yii Framework
Yii Doku: onError
Yii Doku: onException
(/span/span(


Den Artikel empfehlen

Ähnliche Blog Beiträge

PHP Sicherheit: Wie wird PHP Code gehackt

http://www.cucm.de/blog/115/php_sicherheit_wie_wird_php_code_gehackt/
24.07.2012 - Quasi kein Tag vergeht, ohne das über Webseiten Einbrüche und gestohlene Daten berichtet wird. Die Methoden der Hacker sind stehts gleich und bereits mit wenigen Massnahmen ausser Gefecht gesetzt.  Weiter lesen

Weitere Blog Artikel vom Compuser Club

Dem Computer Club folgen und über Neuigkeiten informiert werden:

RSS Feeds RSS Feeds   CUCM @ Twitter Twitter   CUCM @ Facebook Facebook   CUCM @ Google+ Google+
 
Bislang wurde kein Kommentar zu diesem Beitrag abgegeben. Sei erster!
 

Kommentar Verfassen

 
(erforderlich)
 
(erforderlich)
Ihre E-Mail Adresse wird nicht auf der Seite veröffentlicht. Sie dient ausschliesslich der möglichen Kontaktaufnahme unserseits.
 
 
 
 

3) Hinweis zur Freischaltung

Um Spam Missbrauch zu verhindern, werden alle Kommentare zuerst von uns geprüft. Daher kann es einen Augenblick dauern, bis Ihr Kommentar auf unserer Webseite erscheint. Spam oder was wir dafür halten, wird unsererseits kommentarlos gelöscht.
To avoid Spam on our Page, we check all Comments before publish. So save you and us Time and dont Spam.


CompUser Club Mainspitze e.V.   |  65428 Rüsselsheim   |  Moselstrasse 21 (Post Gebäude: 1. Stock)