簡單異常處理
/**
* 異常處理
* @return void
*/
function
debug_user_handler(
$errno
,
$errstr
,
$errfile
,
$errline
,
$errcontext
)
{
ob_start();
debug_print_backtrace();
$trace
= ob_get_contents();
ob_end_clean();
$data
=
array
(
isset(
$_SERVER
[
'REQUEST_URI'
]) ?
$_SERVER
[
'REQUEST_URI'
] :
""
,
date
(
"Y-m-d H:i:s"
),
"錯誤號{$errno}, 文件:{$errfile} 行號: {$errline}"
,
$errstr
,
$trace
);
trigger_error(implode(
"\n"
,
$data
) .
'('
.
$errno
.
')'
);
}
// 可以設置不同異常等級
set_error_handler(
'debug_user_handler'
, E_USER_NOTICE|E_USER_WARNING);
// 測試
function
test_handler()
{
$x
= mt_rand(0, 100);
echo
"x=$x\n"
;
if
(
$x
> 50) {
trigger_error(
"x great than 50"
, E_USER_NOTICE);
}
else
{
trigger_error(
"x less than 50"
, E_USER_WARNING);
}
}
test_handler();
推薦文章
2025-01-18
2024-11-28
2024-11-09
2024-10-25
2024-06-25
2024-01-04
2023-11-06
2023-10-30
2023-10-13
2023-10-10
穩定
產品高可用性高并發貼心
項目群及時溝通專業
產品經理1v1支持快速
MVP模式小步快跑承諾
我們選擇聲譽堅持
10年專注高端品質開發