(PHP 4, PHP 5)
error_reporting — Define cuáles errores de PHP son reportados
La función error_reporting() establece la directiva error_reporting en tiempo de ejecución. PHP tiene varios niveles de errores, el uso de esta función define ese nivel para la duración (tiempo de ejecución) de su script.
El nuevo nivel de error_reporting. Recibe una máscara de bits, o constantes con nombre. El uso de constantes con nombre es bastante recomendable para asegurar la compatibilidad con versiones futuras. A medida que se agregan niveles de error, el rango de los enteros se incrementa, así que los niveles de error antiguos basados en enteros no siempre se comportarán como es de esperarse.
Las constantes de nivel de error disponibles se listan a continuación. Los significados reales de estos niveles de error son descritos en las constantes predefinidas.
valor | constante |
---|---|
1 | E_ERROR |
2 | E_WARNING |
4 | E_PARSE |
8 | E_NOTICE |
16 | E_CORE_ERROR |
32 | E_CORE_WARNING |
64 | E_COMPILE_ERROR |
128 | E_COMPILE_WARNING |
256 | E_USER_ERROR |
512 | E_USER_WARNING |
1024 | E_USER_NOTICE |
6143 | E_ALL |
2048 | E_STRICT |
4096 | E_RECOVERABLE_ERROR |
Devuelve el nivel error_reporting antiguo.
Versión | Descripción |
---|---|
5.0.0 | Se introdujo E_STRICT (no es parte de E_ALL). |
5.2.0 | Se introdujo E_RECOVERABLE_ERROR. |
6 | E_STRICT se hizo parte de E_ALL. |
Example#1 Ejemplos de error_reporting()
<?php
// Deshabilitar todo reporte de errores
error_reporting(0);
// Errores de ejecución simples
error_reporting(E_ERROR | E_WARNING | E_PARSE);
// Reportar E_NOTICE puede ser bueno también (para reportar variables
// no inicializadas o capturar equivocaciones en nombres de variables ...)
error_reporting(E_ERROR | E_WARNING | E_PARSE | E_NOTICE);
// Reportar todos los errores excepto E_NOTICE
// Este es el valor predeterminado en php.ini
error_reporting(E_ALL ^ E_NOTICE);
// Reportar todos los errores de PHP (el valor de bits 63 puede ser usado en PHP 3)
error_reporting(E_ALL);
// Lo mismo que error_reporting(E_ALL);
ini_set('error_reporting', E_ALL);
?>
La mayoría de errores E_STRICT son evaluados en tiempo de compilación, por lo que tales errores no son reportados en el archivo en donde error_reporting sea modificado para incluir errores E_STRICT (y vice-versa).