error_reporting

(PHP 3, PHP 4 , PHP 5)

error_reporting -- Define quais erros serão reportados

Descrição

int error_reporting ( [int nível] )

A função error_reporting() define a diretiva error_reporting em tempo de execução. O PHP tem vários níveis de erros, usando esta função você pode definir o nível durante a execução do seu script.

error_reporting() define o nível de erros que o PHP irá reportar, e retorna o nível antigo. O parâmetro nível pode usar um bitmask, ou constantes. É fortemente recomendado que você use constantes para assegurar compatibilidade com futuras versões. Como níveis de erros podem ser adicionados, o intervalo das constantes pode crescer, então os níveis de erros indicados anteriormente por inteiros pode não funcionar como esperado.

Exemplo 1. Exemplos error_reporting()

<?php

// Desativa o relatório de todos os erros
error_reporting(0);

// Reporta erros simples
error_reporting(E_ERROR | E_WARNING | E_PARSE);

// Reportar E_NOTICE pode ser bom também (para reportar variáveis não iniciadas
// ou eros de digitação em nomes de variáveis ...)
error_reporting(E_ERROR | E_WARNING | E_PARSE | E_NOTICE);

// Reportar todos os erros exceto E_NOTICE
// Este é o valor padrão no php.ini
error_reporting(E_ALL ^ E_NOTICE);

// Reporta todos os erros (bitwise 63 deve ser usado no PHP 3)
error_reporting(E_ALL);

// O mesmo que error_reporting(E_ALL);
ini_set('error_reporting', E_ALL);

?>

Os níveis de erro disponíveis estão listados a baixo. A descrição deles esta em constantes predefinidas.

Tabela 1. Constantes de nível e valores de bit de error_reporting().

ValorConstante
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
2047 E_ALL
2048 E_STRICT

Atenção

A partir do PHP > 5.0.0 E_STRICT com o valor 2048 esta disponível. E_ALL NÃO erros do nívelE_STRICT.

Veja também a diretiva display_errors e ini_set().