error_reporting

(PHP 4, PHP 5, PHP 7)

error_reportingEstablece cuáles errores de PHP son notificados

Descripción

error_reporting ([ int $level ] ) : int

La función error_reporting() establece la directiva error_reporting en tiempo de ejecución. PHP tiene varios niveles de errores para notificar, al utilizar ésta función se define el nivel de duración (tiempo de ejecución) de sus scripts. Si el parámetro opcional level no se define, la función error_reporting() sólo devolverá el nivel actual de notificación de error.

Parámetros

level

El nuevo nivel de error_reporting. Este nivel toma una máscara de bit o constantes nominadas. Al utilizar constantes nominadas se recomienda encarecidamente asegurar la compatibilidad para versiones futuras. Según se añaden niveles de error, el rango de los enteros incrementa, por lo que los niveles antiguos de errores basados en enteros no siempre se comportarán como se esperaba.

Las constantes de niveles de error disponibles, y los significados actuales de esos niveles de error están descritos en constantes predefinidas.

Valores devueltos

Devuelve el nivel antiguo de error_reporting o el nivel actual si el parámetro level no se proporciona.

Historial de cambios

Versión Descripción
5.4.0 Ahora E_STRICT es parte de E_ALL.
5.3.0 Se introdujo E_DEPRECATED y E_USER_DEPRECATED.
5.2.0 Se introdujo E_RECOVERABLE_ERROR.

Ejemplos

Ejemplo #1 Ejemplos de error_reporting()

<?php

// Desactivar toda notificación de error
error_reporting(0);

// Notificar solamente errores de ejecución
error_reporting(E_ERROR E_WARNING E_PARSE);

// Notificar E_NOTICE también puede ser bueno (para informar de variables
// no inicializadas o capturar errores en nombres de variables ...)
error_reporting(E_ERROR E_WARNING E_PARSE E_NOTICE);

// Notificar todos los errores excepto E_NOTICE
error_reporting(E_ALL E_NOTICE);

// Notificar todos los errores de PHP (ver el registro de cambios)
error_reporting(E_ALL);

// Notificar todos los errores de PHP
error_reporting(-1);

// Lo mismo que error_reporting(E_ALL);
ini_set('error_reporting'E_ALL);

?>

Notas

Advertencia

La mayoría de errores E_STRICT son evaluados en tiempo de compilación por lo que tales errores no se notifican en el fichero donde error_reporting se mejora al incluir los errores de E_STRICT (y viceversa).

Sugerencia

Al pasar el valor -1 se mostrarán todos los errores posibles, incluso cuando se añadan nuevos niveles y constantes en futuras versiones de PHP. La constante E_ALL también se comporta de esta forma en PHP 5.4.

Ver también