糯米文學吧

位置:首頁 > 計算機 > php語言

php自定義錯誤處理用法實例

php語言1.47W

php自定義錯誤處理用法,實例分析了php通過自定義函數進行錯誤處理的`技巧,需要的朋友可以參考下.

php自定義錯誤處理用法實例

本文實例講述了php自定義錯誤處理用法。分享給大家供大家參考。具體如下:

<?php

error_reporting(E_ALL);

function ErrHandler($errorno, $errorstr, $errorfile, $errorline)

{

$display = true;

$notify = false;

$halt_script = false;

$error_msg = "<br>The $errorno error is occurring at $errorline in

$errorfile<br>";

switch($errorno)

{

case E_USER_NOTICE:

case E_NOTICE:

$halt_script = false;

$notify = true;

$label = "<B>Notice</B>";

break;

case E_USER_WARNING:

case E_WARNING:

$halt_script = false;

$notify = true;

$label = "<b>Warning</b>";

break;

case E_USER_ERROR:

case E_ERROR:

$label = "<b>Fatal Error</b>";

$notify=true;

$halt_script = false;

break;

case E_PARSE:

$label = "<b>Parse Error</b>";

$notify=true;

$halt_script = true;

break;

default:

$label = "<b>Unknown Error</b>";

break;

}

if($notify)

{

$msg = $label . $error_msg;

echo $msg;

}

if($halt_script) exit -1;

}

$error_handler = set_error_handler("ErrHandler");

echo "<BR><H2>Using Custom Error Handler</h2><BR>";

trigger_error("<BR>Error caused by E_USER_NOTICE</BR>", E_USER_NOTICE);

trigger_error("<BR>Error caused by E_USER_WARNING</BR>", E_USER_WARNING);

trigger_error("<BR>Error caused by E_USER_ERROR</BR>", E_USER_ERROR);

trigger_error("<BR>Error caused by E_PARSE</BR>", E_PARSE);