【错误抑制符@】
除了 PHP.ini 中 error_reporting 和 display_errors 的设置、error_reporting() 函数、ini_set() 函数 外,还可以使用错误抑制符@ 屏蔽错误的输出。
@ 加在任何会产生错误的表达式之前。
【通过 trigger_error 触发 PHP 错误】
触发错误的功能不只限于 PHP 解析器,还可以通过 trigger_error() 函数触发错误,类似于异常中抛出的异常一样,抛出了一个错误,可以协助调试代码。
【例】
代码如下:
PHP
$num1 = 1;
$num2 = '2';
if(!(is_numeric($num1) && is_numeric($num2))){
//手动抛出通知级别的错误
trigger_error('num1 和 num2 必须为合法数值',E_USER_NOTICE);
}else{
echo $num1 + $num2;
}
echo '
程序继续向下执行';
输出:
代码如下:
而:
代码如下:
PHP
$num1 = 1;
$num2 = '2a';
if(!(is_numeric($num1) && is_numeric($num2))){
//手动抛出通知级别的错误
trigger_error('num1 和 num2 必须为合法数值',E_USER_NOTICE);
}else{
echo $num1 + $num2;
}
echo '
程序继续向下执行';
输出:
代码如下:
PHP\Error\error1.PHP on line 6
程序继续向下执行
【其他】当数据库连接不上时等严重错误时,可以手动抛出错误 —— 用 E_USER_ERROR 取代 PHP 内置的E_WARNING 警告。
原文链接:https://www.f2er.com/php/21689.html