2009-07-14 4 views
4

Derzeit habe ich kein sehr gutes System für die Verwaltung von Fehler- oder Erfolgsmeldungen, sie sind ziemlich inline mit dem Code geschrieben. Kann jemand eine Best Practice vorschlagen oder etwas, das Sie tun, um eine große Liste von Fehler- und Erfolgsmeldungen in einer Anwendung richtig verwalten zu können?Was ist ein guter Weg, Fehler und Erfolg Nachrichten und Codes zu verwalten?

Denken Internationalisierung ... einige Anwendungen werden Sprachdateien haben, dann zieht die App nur die Strings aus der bestimmten Datei ... Ich denke über die Umsetzung eines ähnlichen Konzepts für Fehler und Erfolg Nachrichten und bin gespannt was andere haben in die gleiche Richtung getan?

+0

Ich weiß, dass dies eine alte Post, aber haben Sie jemals die Lösung finden, die Sie gesucht haben? – ServAce85

Antwort

1

Dies ist eine Funktion, die ich benutze:

function checkErrors($type, $msg, $file, $line, $context) { 
    echo "<h1>Error!</h1>"; 
    echo "An error occurred while executing this script. Please contact the <a href=mailto:[email protected]>webmaster</a> to report this error."; 
    echo "<p />"; 
    echo "Here is the information provided by the script:"; 
    echo "<hr><pre>"; 
    echo "Error code: $type<br />"; 
    echo "Error message: $msg<br />"; 
    echo "Script name and line number of error: $file:$line<br />"; 
    $variable_state = array_pop($context); 
    echo "Variable state when error occurred: "; 
    print_r($variable_state); 
    echo "</pre><hr>"; 
} 
set_error_handler('checkErrors'); 

es Ihnen, alle in dem Fall die Fehler und Warnungen, die PHP-Code erzeugt, zusammen mit erstellen eine Fehlerseite für Sie gibt, dass jemand eine Seite besucht das enthält einen Fehler.

Hoffe, das hilft!

+0

ya aber die tatsächlichen Nachrichten sind immer noch über Ihre gesamte Anwendung verteilt, ich bin auf der Suche nach einer Möglichkeit, die tatsächlichen Nachrichten zu verwalten, die in einer Anwendung – farinspace

0

Da ich ein Single-Access-Point-Stil-System verwenden, das die Anwendung Schopf aus dem Sumpf und enthält die richtige Datei (es ist im Grunde ein Controller-System) kann ich verwenden:

<?php 
try { 
    require 'bootstrap.php'; 
    // dispatch controller 
    require "controllers/$controller.php"; 
} catch (Exception $e) { 
    // echo info 
} catch (LibraryException $le) { 
    // library specific exception 
} 

Dann, wenn ich einen Fehler werfen will ich habe gerade:

throw new Exception('An error occurred.'); 

Kann jemand vorschlagen, eine beste Praxis oder etwas, das Sie richtig in der Lage ist zu tun, um eine große Liste von Fehler- und Erfolgsmeldungen zu verwalten aus einer Anwendung durch.

So verwalte ich Fehler durch Massen, aber nicht, wie ich eine Liste verwalten könnte. Ich konnte grep für Fehlermeldungen finden, aber es ist nicht wirklich sehr organisiert.

+0

verwendet werden Best Practice hätte LibraryException extend Exception, dann legte den LE-Catch-Block vor der Ausnahme zu fangen Block. –

0

Sie könnten etwas wie PHP Documentor verwenden und Fehler und Nachrichten in die Dokumente für jede Klasse aufnehmen.

http://www.phpdoc.org/

Verwandte Themen