PHP 错误处理函数

PHP trigger_error() 函数用于触发用户定义的错误条件并生成用户级错误/警告/通知消息。它可以与内置错误处理程序结合使用,或者与 set_error_handler( ) 函数。

语法

trigger_error(message, error_level) 

参数

messsage必填。 指定此错误的错误消息。它的长度限制为 1024 字节。超过 1024 字节的任何其他字符都将被截断。
error_level可选。 指定此错误的错误类型。它可以从 E_USER 常量系列中获取值,这些常量是:
  • E_USER_ERROR
  • E_USER_WARNING
  • E_USER_NOTICE(默认)
  • E_USER_DEPRECATED

返回值

如果指定了错误的error_level,则返回 false,否则返回 true。

示例:trigger_error() 示例

下面的示例显示了 trigger_error() 函数的用法。

<?php
$dividend = 100;
$divisor = 0;

if ($divisor == 0) {
  trigger_error("Cannot divide by zero", E_USER_ERROR);
} else {
  echo ($dividend/$divisor);
}
?> 

输出上面的代码将是:

PHP Fatal error:  Cannot divide by zero in Main.php on line 6 

示例:在函数内部使用

再考虑一个示例,其中该函数在函数内部实现,并在出现错误情况时生成错误消息

<?php
function divide($dividend, $divisor) {
  if ($divisor == 0) {
    trigger_error("Cannot divide by zero", E_USER_ERROR);
  } else {
    echo ($dividend/$divisor)."\n";
  }
}

divide(100, 25);
divide(100, 10);
divide(100, 0);
divide(100, 20);
?> 

上述代码的输出将是:

4
10

PHP Fatal error:  Cannot divide by zero in Main.php on line 4