PHP错误报告及设置级别

猫斯基 29 2014-02-01

错误报告

/*
	猫斯基 wp.www.maosiji.com
*/
// 注意
getType( $a );
echo '1111111111111111
'; // 1111111111111111 // 警告 getType(); echo '2222222222222222
'; // 2222222222222222 // 错误 getType3(); echo '3333333333333333
';

设置级别

1、在 PHP.ini 里更改,error_reporting = E_ALL

// 所有的错误提醒,并且除了注意错误
error_reporting = E_ALL & `E_NOTICE

2、在脚本里更改。

error_reporting(E_ALL & `E_NOTICE);

自定义错误报告

/*
	猫斯基 wp.www.maosiji.com
*/
// error_reporting(E_ALL & ~E_NOTICE);
// 在php中注册一个函数来处理错误报告,不按原来的方式处理
set_error_handler( "myerror" );
$msg = "";
// 自定义错误报告处理函数
function myerror( $error_type, $error_message, $error_file, $error_line ) {
	global $msg;
	$msg .= "发生错误级别为 {$error_type} 类型,错误消息:{$error_message},在文件 {$error_file} 中,第 {$error_line} 行。
"; } // 注意 getType( $a ); echo '1111111111111111
'; // 1111111111111111 // 警告 getType(); echo '2222222222222222
'; // 2222222222222222 // 错误 // getType3(); echo '3333333333333333
'; echo $msg; /* 1111111111111111 2222222222222222 3333333333333333 发生错误级别为 8 类型,错误消息:Undefined variable: a,在文件 /www/wwwroot/1.www.maosiji.com/phpcode/a.php 中,第 17 行。 发生错误级别为 2 类型,错误消息:gettype() expects exactly 1 parameter, 0 given,在文件 /www/wwwroot/1.www.maosiji.com/phpcode/a.php 中,第 21 行。 */

记录错误日志

上线的PHP项目,在php.ini中关掉错误报告display_errors = Off,开启错误日志log_errors = On,并开启自定义日志输出error_log = "/www/wwwlogs/a.php.log"

在脚本里设置/获取php.ini

ini_set( "display_errors", "off" );
echo ini_get( "display_errors" );

本文由 猫斯基 原创发布。

著作权均归用户本人所有。独家文章转载,请联系本站管理员。获得授权后,须注明本文地址! 本文地址:https://www.maosiji.com/2581.html