迹忆客 专注技术分享

当前位置:主页 > 学无止境 > 编程语言 > PHP >

PHP 错误处理程序

作者:迹忆客 最近更新:2023/03/28 浏览次数:

在本文中,我们将介绍 PHP 中的错误处理。我们将介绍 PHP 错误处理的重要性及其工作原理。


什么是 PHP 中的错误处理

这是识别程序中的错误并对其采取行动的过程。PHP 错误检查代码将提高你程序的安全性并使其更加专业。

我们将研究的方法包括:

  1. die() 函数的基本错误处理。
  2. 自定义错误处理。

PHP 中 die() 函数的基本错误处理

die() 函数将向网络发送消息并退出脚本。

在下面的示例代码中,我们将尝试打开根文件夹中不存在的文件。让我们看看发生了什么。

<?php
$file=fopen("sampletutorial.txt","r");
?>

输出:

Warning: fopen(sampletutorial.txt): Failed to open stream: No such file or directory in C:\xampp\htdocs\projects\New folder\PHP Error Handling\Example code 1.php on line 2

为防止出现此错误,我们可以使用 die() 函数打印一条消息并退出脚本,如下所示。

<?php
if(file_exists("sampletutorial.txt")) {
  $file = fopen("sampletutorial.txt", "r");
} else {
  die("Error: The file does not exist.");
}
?>

输出:

Error: The file does not exist.

那好多了。让我们看看自定义错误处理程序。


在 PHP 中创建自定义错误处理程序

自定义错误处理程序必须至少有两个参数。

  1. error_level - 这是错误报告级别。
  2. error_message - 这是你要打印的消息。

该函数最多接受五个参数。这些都是:

  1. error_file - 此参数指定有错误的文件。
  2. error_line - 此参数显示有错误的编码行。
  3. error_context - 显示所有有错误的变量和值。

不同类型的错误报告级别:

  1. [1] E_ERROR
  2. [2] E_WARNING
  3. [8] E_NOTICE
  4. [256] E_USER_ERROR
  5. [512] E_USER_WARNING
  6. [1024] E_USER_NOTICE
  7. [2048] E_STRICT
  8. [8191] E_ALL

让我们创建一个自定义错误处理程序。下面的示例代码显示了我们如何创建自定义函数来处理 PHP 中的错误。

<?php
function mycustomError($errno, $errstr) {
  echo "<b>Error:</b> [$errno] $errstr<br>";
  echo "Terminating Script";
  die();
}
?>

这就是我们创建自定义错误处理程序的方式。接下来是设置错误处理程序,如下所示。

<?php
//error handler function
function mycustomError($errno, $errstr) {
  echo "<b>Error:</b> [$errno] $errstr";
}

//set error handler
set_error_handler("mycustomError");

//trigger error
echo($t);
?>

输出:

Error: [2] Undefined variable $t

由于未设置变量 $t,我们会收到一条错误消息,如输出所示。

触发错误:

在用户可以输入数据的脚本中触发错误非常重要。这样,用户就不会输入非法命令。

我们在 PHP 中使用 trigger_error() 函数,如下面的示例代码所示。

<?php
//error handler function
function mycustomError($errno, $errstr) {
  echo "<b>Error:</b> [$errno] $errstr<br>";
  echo "Terminating Script";
  die();
}

//set error handler
set_error_handler("mycustomError",E_USER_WARNING);

//trigger error
$t = 7;
if ($t>=1) {
  trigger_error("Value entered must be 1 or below",E_USER_WARNING);
}
?>

输出:

Error: [512] Value entered must be 1 or below
Terminating Script

在上面的示例代码中,我们通过将变量 $t 的值设置为 7 来触发错误。当变量 $t 大于 1 时,我们的 trigger_error() 函数被设置。

上一篇:PHP 创建下拉列表

下一篇:PHP 代理

转载请发邮件至 1244347461@qq.com 进行申请,经作者同意之后,转载请以链接形式注明出处

本文地址:

相关文章

如何在 PHP 中获取时间差的分钟数

发布时间:2023/03/29 浏览次数:183 分类:PHP

本文介绍了如何在 PHP 中获取时间差的分钟数,包括 date_diff()函数和数学公式。它包括 date_diff()函数和数学公式。

PHP 中的重定向

发布时间:2023/03/29 浏览次数:136 分类:PHP

本教程演示了如何将用户从页面重定向到 PHP 中的其他页面

PHP 分页

发布时间:2023/03/29 浏览次数:66 分类:PHP

本教程介绍如何在 PHP 中对数据库行进行分页

扫一扫阅读全部技术教程

社交账号
  • https://www.github.com/onmpw
  • qq:1244347461

最新推荐

教程更新

热门标签

扫码一下
查看教程更方便