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(); |
} |
} |
|
} |
?> |
?> |