> php教程 > php手册 > 一个PHP简单的异常处理代码

一个PHP简单的异常处理代码

WBOY
풀어 주다: 2016-06-06 19:38:00
원래의
1505명이 탐색했습니다.

无详细内容 无 ?php/** * 异常处理 * @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['REQUE

<?php

/**
 * 异常处理
 * @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[&#39;REQUEST_URI&#39;]) ? $_SERVER[&#39;REQUEST_URI&#39;] : "",
			date("Y-m-d H:i:s"),
			"错误号{$errno}, 文件:{$errfile} 行号: {$errline}",
			$errstr,
			$trace);	
	trigger_error(implode("\n", $data) . &#39;(&#39; . $errno . &#39;)&#39;);
}
// 可以设置不同异常等级
set_error_handler(&#39;debug_user_handler&#39;, 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();
로그인 후 복사
원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
최신 이슈
인기 추천
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿