00001 <?php
00015 class Debug{
00016
00017 const DEBUG = true;
00018 const FICHERO = "/tmp/pax.log";
00019 const NIVEL = "E_USER_ERROR | E_USER_WARNING | E_USER_NOTICE";
00020 const FORMATO_FECHA = "Y-m-d H:i:s";
00021
00022
00023 public static $debug = self::DEBUG;
00024 public static $fichero = self::FICHERO;
00025 public static $nivel = self::NIVEL;
00026 public static $formatoFecha = self::FORMATO_FECHA;
00027
00031 public static function anotar($msg){
00032 if (!self::$debug) return;
00033 $fichero = fopen(self::$fichero, "a");
00034 if (!$fichero) throw new Exception(3);
00035 error_reporting(self::$nivel);
00036 $msg = date("Y-m-d H:m:s")." - ".$msg."\n";
00037 fwrite($fichero, $msg);
00038 }
00046 public static function gestionarError($numError, $mensaje, $fichero, $lÃÂnea){
00047 #echo "En gestionarError $numError $mensaje $fichero $lÃÂnea";
00048
00049 if (!self::$debug) return;
00050
00051 if ($numError == 2048) return;
00052 switch($numError){
00053 case E_USER_ERROR:
00054 self::anotar("ERROR [$numError] $mensaje.\nEn el fichero $fichero, lÃÂnea $lÃÂnea.\nAbortando");
00055 exit(1);
00056 break;
00057 case E_USER_WARNING:
00058 self::anotar("Warning [$numError] $mensaje.\nEn el fichero $fichero, lÃÂnea $lÃÂnea.");
00059 break;
00060 case E_USER_NOTICE:
00061 self::anotar("Aviso [$numError] $mensaje.\nEn el fichero $fichero, lÃÂnea $lÃÂnea.");
00062 break;
00063 default:
00064 self::anotar("Mensaje [$numError] $mensaje.\nEn el fichero $fichero, lÃÂnea $lÃÂnea.");
00065 break;
00066 }
00067 return;
00068 }
00069 }
00070
00071
00072 return true;
00073 ?>