Location: PHPKode > projects > MUSPA > error_handler.php
<?php
/*******************************************************************************
* MUSPA
*
* Copyright (C) 2004 MUSPA Project
*
* Este programa é software livre; você pode redistribuí-lo e/ou modificá-lo
* sob os termos da Licença Pública Geral GNU conforme publicada pela Free
* Software Foundation; tanto a versão 2 da Licença, como (a seu critério)
* qualquer versão posterior.
*
* Este programa é distribuído na expectativa de que seja útil, porém, SEM
* NENHUMA GARANTIA; nem mesmo a garantia implícita de COMERCIABILIDADE OU
* ADEQUAÇÃO A UMA FINALIDADE ESPECÍFICA. Consulte a Licença Pública Geral do
* GNU para mais detalhes.
*
* Você deve ter recebido uma cópia da Licença Pública Geral do GNU junto com
* este programa; se não, escreva para a Free Software Foundation, Inc., no
* endereço 59 Temple Street, Suite 330, Boston, MA 02111-1307 USA.
*
*******************************************************************************/

// Seta handler para os erros
set_error_handler('ErrorHandler');

/**
*	Error Handler
*	@param	$num	Código do erro
*	@param	$str	Descrição do erro
*	@param	$file	Nome do arquivo
*	@param	$line	Linha onde ocorreu o erro
*/
function ErrorHandler($num, $str, $file, $line)
{
	if (!error_reporting())
		return;

	$type = "";
	switch($num)
	{
		case E_NOTICE:
			$type = "NOTICE";
			break;
		case E_WARNING:
			$type = "WARNING";
			break;
		case E_ERROR:
			$type = "FATAL";
			break;
		case E_USER_NOTICE:
			$type = "USER_NOTICE";
			break;
		case E_USER_ERROR:
			$type = "USER_ERROR";
			break;
		case E_COMPILE_WARNING:
			$type = "COMPILE WARNING";
			break;
		case E_CORE_WARNING:
			$type = "CORE WARNING";
			break;
	}

	if (!DEBUG)
	{
		$error = $type.': '.$str.' ('.$file.':'.$line.')';
		mail(ADMIN_MAIL, VERSION, $error);
		if (($num != E_NOTICE) && ($num != E_USER_NOTICE))
			SemiFatalError('Houve um erro interno, o admnistrador foi avisado.'.$type, $_SERVER['HTTP_REFERER']);
	}
	else
		echo '<span style="font-family: Verdana; color: #333333; font-size: 12px;"><b>',
			$type, ': </b><blockquote style="margin-top: 5px;">', $str, '.<br>em <i><b>', $file, ':', $line, '</b></i></blockquote></span><br>';

}

Return current item: MUSPA