Subversion Repositories Applications.framework

Compare Revisions

Ignore whitespace Rev 141 → Rev 142

/trunk/framework/GestionnaireException.php
1,7 → 1,8
<?php
// declare(encoding='UTF-8');
/**
* classe de gestion des exceptions.
* Classe de gestion des exceptions.
* C'est un Singleton.
*
* PHP Version 5
*
89,12 → 90,11
* @param Exception $e l'exception à traiter
*/
public static function gererException(Exception $e) {
 
// pour le moment on se contente de l'ajouter au tableau et de les afficher
self::$exceptions[] = $e;
 
// si on doit logger on envoie l'exception au loggeur
if(self::$logger) {
if (self::$logger) {
self::loggerException($e);
}
}
109,8 → 109,7
*/
public static function gererErreur($niveau, $message, $fichier, $ligne, $contexte){
// si aucun rapport d'erreur, on sort directement
if (error_reporting() == 0)
{
if (error_reporting() == 0) {
return;
}
 
119,7 → 118,7
// que l'on donne au tableau d'exceptions
self::$exceptions[] = $e;
// on la logge si nécéssaire
if(self::$logger) {
if (self::$logger) {
self::loggerException($e);
}
return;
131,8 → 130,8
*/
public static function getExceptions() {
$retour = '';
foreach (self::$exceptions as $e) {
switch(self::$mode) {
foreach (self::$exceptions as $cle => $e) {
switch (self::$mode) {
case 'cli' :
$retour .= $e->getMessage()."\n";
$retour .= 'Fichier : '.$e->getFile()."\n";
154,6 → 153,8
$retour .= '</pre>'."\n";
}
}
// Nous vidons le tableau des exceptions au fur et à mesure
unset(self::$exceptions[$cle]);
}
return $retour;
}
163,7 → 164,6
* @param Exception $e l'exception à logger
*/
private static function loggerException($e) {
 
$erreur = '';
$erreur .= $e->getMessage()."\n";
$erreur .= 'Fichier : '.$e->getFile()."\n";
176,8 → 176,11
}
 
public function __destruct() {
echo self::getExceptions();
// Si des erreurs n'ont pas été affichée nous forçons leur affichage
if (count(self::$exceptions) > 0) {
echo self::getExceptions();
}
}
 
}
?>
?>