Função set_error_handler() do PHP
Exemplo
Definir um manipulador de erro personalizado usando a função set_error_handler() e then triggar um erro (usando trigger_error()):
<?php // Função de tratamento de erro personalizada function myErrorHandler($errno, $errstr, $errfile, $errline) { echo "<b>Erro personalizado:</b> [$errno] $errstr<br>"; echo " Erro na linha $errline no $errfile<br>"; } // Definir função de tratamento de erro personalizada set_error_handler("myErrorHandler"); $test=2; // Aciona erro if ($test>1) { trigger_error("Um erro personalizado foi acionado"); } ?>
A saída do código acima é semelhante a esta:
Erro personalizado: [1024] Um erro personalizado foi acionado Erro na linha 14 em C:\webfolder\test.php
Definição e Uso
A função set_error_handler() define a função de manipulação de erro personalizada.
Comentários:Se usar essa função, ela绕过 o manipulador de erros padrão do PHP e, se necessário, o programa de erro definido pelo usuário termina o script com die().
Comentários:Se o erro ocorrer antes da execução do script (por exemplo, durante o upload de arquivos), o manipulador de erro personalizado não será chamado porque ele não foi registrado ainda naquele momento.
Sintaxe
set_error_handler(errorhandler,E_ALL|E_STRICT);
Parâmetros | Descrição |
---|---|
errorhandler | Obrigatório. Define o nome da função de manipulação de erro do usuário. |
E_ALL|E_STRICT | Opcional. Define qual nível de relatório de erro de usuário definido deve ser exibido. O padrão é "E_ALL". |
Detalhes Técnicos
Retorno: | String que contém o manipulador de erros definido anteriormente. |
---|---|
Versão PHP: | 4.0.1+ |
Log de Atualizações PHP: |
PHP 5.5: Parâmetros errorhandler Agora aceita NULL PHP 5.2: O manipulador de erros deve retornar FALSE para exibir $php_errormsg. |