Ayer escribí un post sobre la gestión de excepciones en php y hoy voy a comentar la gestión de errores en php. Aunque no todos los errores van a poder ser manejados con el post de hoy. Para gestionar los errores en php primero hay que establecer una función de gestión de errores y se establece usando set_error_handler.
Los errores que no se pueden gestionar son:
- E_ERROR
- E_PARSE
- E_CORE_ERROR
- E_CORE_WARNING
- E_COMPILE_ERROR
- E_COMPILE_WARNING
Ahora pondré un ejemplo que he visto en internet y que ha parecido muy interesante:
function handler_notice($no, $str, $file, $line) {
echo 'Notice '.$no .' in '.$file .'line '.$line: '.$str';
}
function handler_error($num, $str, $file, $line) {
echo 'Error '.$no .' in '.$file .'line '.$line: '.$str';
}
set_error_handler('handler_notice', E_NOTICE);
set_error_handler('handler_error', E_ERROR);
echo $demo;
En caso de querer usar el método de una clase para la gestión de errores se tiene que definir así:set_error_handler(array($object, 'staticHandlerMethod'));