php gerr 统一的错误处理 v0
一般统一的错误处理机制是使用[异常],PHP也提供了异常的功能,但异常对概念及知识面都有要求,才能用好,为避免复杂,所以不使用异常作为统一的错误处理.
网站程序的错误处理,最常用的就是中断程序执行,显示给用户一个提示框,比如在控制器中使用 showmessage() 进行错误提示,所以,在控制器中直接使用 showmessage() 中提示即可.
不过,showmessage() 并不适合在类方法及函数中使用,因为有时调用者需要自己对错误进行处理,比如,错误提示使用 JS 的 alert() 弹出,而不是显示一个 html 页面,因此,要统一的是类方法中及函数中的错误处理.
保守的写法是函数返回 true 或 false,并通过比如传地址的参数传递错误信息:
bool func_name(& $error)
类方法则在类中定义一个 get_error() 之类的方法返回最后一次错误信息.
但是,当出现然"地支持错误信息的向上传递,手动模拟的向上传递代码写起来都很麻烦,不愿意写.
网站程序的错误处多层调用时,比如 调用者 -> A() -> B() -> C() ,在 C 函数中出现错误,这种方式要传递错误信息就很麻烦了:B() 要处理并兼容 C() 的错误处理,A() 要兼容 B() 的错误处理.
只有异常才很"自理,就是想在发生错误时默认就给用户一个提示并中断程序执行,并且当调用者需要自定义如何处理错误时允许调用者自定义.
所以,统一的错误处理就是默认直接对用户进行中断提示,比如数据库插入错误,又允许调用者需要的时候可以自定义处理错误,比如使用 JS 弹出错误信息.
于是,引入 gerr 类统一网站程序的错误处理:
gerr 类位于 /include/gerr.class.php,类名为 gerr,所有方法都为静态方法,无需也无法实例化.phprm.com
当方法或函数中出现错误时,调用 gerr::error() 设置错误信息并返回 false.
默认 gerr::error() 会调用 showmessge() 进行错误提示。
当调用者需要自定义处理错误时,可以调用 gerr::func_set() 设置一个自定义的错误处理函数,gerr::error() 便会调用调用者设置的错误处理函数进行错误处理.
一般来说错误处理方式都是由控制器决定的,所以 gerr::func_set() 一般是在控制器中调用。可以使用 gerr::func_reset() 把错误处理函数重置为默认函数。
在方法和函数中,可以使用 gerr::check() 检查是否已发生错误(一般发生错误都需要中断程序执行,不中断继续执行只会发生更多的错误),防止已发生的错误未被处理.
若类方法或函数使用"流程"的形式组织(比如要先 fopen 后才能 fwrite),在流程开始时调用 gerr::start() 让 gerr 进行流程的初始化,在流程成功完成后调用 gerr::end() 通知 gerr 流程已结束。
可以使用 gerr::get() 取得错误信息。
一个使用 gerr 的函数示例:
function myerr() { if (false) { gerr::error('发生错误了', __FILE__, __LINE__, __FUNCTION__); return false; } return true }
本文地址:
转载随意,但请附上文章地址:-)

Hot AI Tools

Undresser.AI Undress
AI-powered app for creating realistic nude photos

AI Clothes Remover
Online AI tool for removing clothes from photos.

Undress AI Tool
Undress images for free

Clothoff.io
AI clothes remover

AI Hentai Generator
Generate AI Hentai for free.

Hot Article

Hot Tools

Notepad++7.3.1
Easy-to-use and free code editor

SublimeText3 Chinese version
Chinese version, very easy to use

Zend Studio 13.0.1
Powerful PHP integrated development environment

Dreamweaver CS6
Visual web development tools

SublimeText3 Mac version
God-level code editing software (SublimeText3)

Hot Topics



PHP is a popular and powerful server-side programming language that can be used to develop various web applications. Just like other programming languages, PHP is prone to errors and exceptions. These errors and exceptions may be caused by various reasons, such as program errors, server errors, user input errors, etc. In order to ensure the running stability and reliability of the program, PHP provides a complete set of error handling mechanisms. The basic idea of PHP error handling mechanism is: when an error occurs, the program will stop execution and output an error message. we can

How to deal with syntax errors in PHP Introduction: When developing PHP programs, you often encounter syntax errors. Syntax errors are caused by code that violates PHP syntax rules, which causes the script to fail to execute correctly. This article will introduce some ways to deal with PHP syntax errors and provide corresponding code examples. Using the error prompt function PHP provides a rich error prompt function. These prompts can be turned on during the development process to discover and solve syntax errors in a timely manner. You can set error by

How to handle PHP file operation errors and generate corresponding error messages. When using PHP to perform file operations, you may encounter various errors, such as file not found, permission errors, etc. These errors may cause the program to fail to run properly, so it is very important to handle file operation errors appropriately. This article will introduce how to handle PHP file operation errors and show how to generate corresponding error messages. 1. Error handling method uses error control operator PHP provides the error control operator "@", which can be added before executing statements that may cause errors.

How to handle PHP file path errors and generate corresponding error messages. When developing and maintaining PHP applications, file path errors are often encountered. When a file that does not exist is referenced or an incorrect path is specified, a fatal error is thrown in PHP, causing the application to fail to run properly. In order to better debug and handle this situation, we can handle PHP file path errors in the following ways and generate corresponding error messages. Use absolute paths When referencing files, try to use absolute paths instead of relative paths.

How to handle errors in PHP backend function development? As a PHP backend developer, we often encounter various errors during the development process. Good error handling is an important factor in ensuring system stability and user experience. In this article, I will share some error handling methods and techniques on how to develop PHP back-end functions, and provide corresponding code examples. Setting the error reporting level PHP provides an error reporting level parameter that can be set to define the types of errors to be reported. Use error_repo

Solving PHP errors: calling undefined class methods During the PHP development process, we often encounter errors calling undefined class methods. This situation is generally caused by irregular code writing or non-existent class methods. Below we'll cover some common ways to fix this problem. Check whether the class method exists. When an error message prompts that an undefined class method is called, first check whether the method exists in the corresponding class. You can check whether a method exists in a class by using the method_exists() function.

PHP Error Handling: Best Practices and Recommendations Error handling is a very important task when writing PHP code. If errors are not handled correctly, it can lead to vulnerabilities and security issues in your application. At the same time, good error handling also helps improve the maintainability and scalability of the code. This article will introduce some best practices and recommendations for PHP error handling and provide some code examples. Using Exception Handling In PHP, exceptions are a mechanism used to handle runtime errors. By using exceptions, errors can be

How to handle index errors in PHP source code During the PHP development process, you often encounter "indexundefined" errors. This error is usually caused by trying to access a non-existent index in the array or object. There are many ways to solve this problem. The following will show several methods with specific code examples. Method 1: Use the isset() function The isset() function is used to check whether the variable has been declared and whether it has a value. By using the isset() function,
