can anyone help me to find what i am doing wrong in this code........
<?php
class _Error_Handler
{
var $_e_type;
var $_e_message;
var $_e_file;
var $_e_line;
//Constructor
function _Error_Handler()
{
$this->_set_handler();
}
//Sets the Error Handler
function _set_handler()
{
set_error_handler(array(&$this,"handler"));
}
//error Handler
function handler($error_type, $error_message,$error_file, $error_line)
{
switch($error_type)
{
case E_ERROR:
$this->assign_values("Fatal Error",$error_message,$error_file,$error_line);
break;
case E_WARNING:
$this->assign_values("Warning",$error_message,$error_file,$error_line);
break;
case E_PARSE:
$this->assign_values("Parse Error",$error_message,$error_file,$error_line);
break;
case E_NOTICE:
$this->assign_values("Notice",$error_message,$error_file,$error_line);
break;
case E_COMPILE_WARNING:
$this->assign_values("Compile Warning",$error_message,$error_file,$error_line);
break;
case E_CORE_ERROR:
$this->assign_values("Core Error",$error_message,$error_file,$error_line);
break;
case E_CORE_WARNING:
$this->assign_values("Core WARNING",$error_message,$error_file,$error_line);
break;
case E_USER_ERROR:
$this->assign_values("User Error",$error_message,$error_file,$error_line);
break;
case E_USER_WARNING:
$this->assign_values("User Warning",$error_message,$error_file,$error_line);
break;
case E_USER_NOTICE:
$this->assign_values("User Notice",$error_message,$error_file,$error_line);
break;
case E_ALL:
$this->assign_values("All",$error_message,$error_file,$error_line);
break;
}
}
// function used to assign values for member variables
function assign_values($_etype,$_emessage,$_efile,$_eline)
{
$this->_e_type = $_etype;
$this->_e_message = $_emessage;
$this->_e_file = $_efile;
$this->_e_line = $_eline;
//If i call the show_error function here it works well
//$this->show_error();
}
function show_error()
{
echo "etype = ".$this->_e_type."<br>";
echo "emessage = ".$this->_e_message."<br>";
echo "efile = ".$this->_e_file."<br>";
echo "eline = ".$this->_e_line."<br>";
exit();
}
}
$eh = new _Error_Handler();
//if i call the show_error function here it is not working
$eh->show_error();
//i want to use like this also
//$eh->_e_type
?>